{"mappings":"A,S,E,C,C,C,C,C,C,C,E,O,c,C,E,E,C,I,E,I,E,W,C,E,a,C,C,E,C,S,E,C,E,O,G,E,U,C,E,O,C,C,C,I,E,W,E,C,E,E,C,E,E,E,iB,A,O,I,A,C,E,S,C,E,G,K,E,O,C,C,E,C,O,C,G,K,E,C,I,E,C,C,E,A,Q,C,C,E,C,I,E,C,G,E,Q,C,C,E,O,C,C,E,C,E,E,I,C,E,O,C,E,E,O,E,E,O,A,C,I,E,A,M,uB,E,I,O,E,I,C,mB,C,C,E,Q,C,S,C,C,C,E,C,C,E,C,C,E,E,iB,C,G,I,E,E,Q,C,E,Q,S,C,C,C,E,E,E,O,C,iB,I,G,I,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SEKY,IAAC,EAAiB,CAa1B,UAAU,CAAc,CAAE,CAAc,EACpC,IAAI,QASJ,AAAI,CAAC,CAPD,EADA,OAAO,IAAI,CAAC,GAAgB,IAAI,CAAC,AAAA,GAAO,EAAI,UAAU,CAAC,SAC9B,AAAA,CAAA,EAAA,EAAA,eAAA,AAAA,EAAgB,GAGhB,GAID,IAAI,EAK5B,GAAgB,KAJT,AAAA,CAAA,EAAA,EAAA,OAAA,AAAA,EAAQ,SAAS,CAAC,EAAwB,GAQhD,AAAA,EAAA,OAAA,CAAQ,cAAc,CAAC,IAAI,CAiB5B,GAE2B,KAAA,IAAvB,EAAe,GAAG,EAClB,AAAA,CAAA,EAAA,EAAA,6BAAA,AAAA,EAA8B,kBAAkB,CAEhD,EAAe,GAAG,CACZ,IAAI,EAAA,aAAA,CAAc,CAAE,SAAU,KAAK,GACnC,EAAA,cAAA,EAEH,AAAA,CAAA,EAAA,EAAA,OAAA,AAAA,EAAQ,SAAS,CAAC,EAAwB,CAC7C,KAAM,AAAA,EAAA,OAAA,CAAQ,cAAc,CAAC,IAAI,CACjC,GAAG,CAAc,AACjC,QAIQ,AAAA,CAAA,EAAA,EAAA,OAAA,AAAA,EAAQ,SAAS,CAAC,IAhCd,AAAA,CAAA,EAAA,EAAA,6BAAA,AAAA,EAA8B,aAAa,CAAC,EAAuB,IAAI,EACvE,AAAA,CAAA,EAAA,EAAA,6BAAA,AAAA,EAA8B,kBAAkB,CAEhD,GAAgB,IACV,IAAI,EAAA,aAAA,CAAc,CAAE,SAAU,KAAK,GACnC,EAAA,cAAA,EACC,AAA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,E,I,C,K,E,K,E,W,I,E,M,A,C,E,E,W,A,E,I,C,S,C,E,O,E,K,E,K,E,E,I,C,I,C,C,E,E,E,G,EACxD,EAAA,AAAA,CAAA,EAAA,EAAA,aAAA,AAAA,EAAA,G,E,K,C,C,M,E,M,C,E,E,I,G,A,M,E,G,A,C,E,E,I,E,E,I,C,M,C,E,E,CAIxB,GAJe,EAAK,EAAA,KAAA,CACpB,EAAW,IAAI,CAAC,GAGZ,EAAW,MAAM,CACnB,MAAA,CAAA,EAAA,A,C,E,K,C,C,M,E,M,C,E,E,A,M,E,M,C,E,G,A,M,E,O,E,C,M,E,I,E,E,C,E,G,A,M,E,G,E,I,C,I,C,C,G,E,G,E,C,C,G,C,E,I,E,C,E,E,M,A,C,E,M,C,E,E,C,M,C,E,E,I,C,G,A,M,E,E,I,G,E,K,C,C,M,E,M,C,E,G,A,M,E,G,E,M,E,K,C,M,C,E,A,M,G,M,C,E,A,M,G,OAGJ,EAAW,QAAQ,G,C,E,A,C,E,EACpB,CAAA,EAlBW,EAAe,GAAY,KAAK,CAAC,SAAC,CAAG,EAAK,OAAA,EAAW,KAAK,CAAC,EAAjB,EACpD,EACF,C,G,E,Q,S,C,C,C,E,E,E,O,C,c,I,GEnHO,IAAM,EAAe,SAAI,CAAM,EAAwB,OAAA,GAAK,AAAoB,UAApB,OAAO,EAAE,MAAM,EAAiB,AAAa,YAAb,OAAO,CAA5C,C,G,E,Q,S,C,C,C,E,E,E,O,C,Y,I,G,I,E,E,SEMxD,SAAU,EAAU,CAAU,EAClC,MAAO,AAAA,CAAA,EAAA,EAAA,UAAA,AAAA,EAAW,MAAA,EAAK,KAAA,EAAL,EAAO,IAAI,CAC/B,C,G,E,Q,S,C,C,C,E,E,E,O,C,a,I,GEJM,SAAU,EAAW,CAAU,EACnC,MAAO,AAAiB,YAAjB,OAAO,CAChB,C,G,E,Q,S,C,C,C,E,E,E,O,C,a,I,G,I,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,S,E,E,SEUA,EAAA,WAkBE,SAAA,EAAY,CAA6E,EACnF,GACF,CAAA,IAAI,CAAC,UAAU,CAAG,CADpB,CAGF,CAwbF,OA5ZE,EAAA,SAAA,CAAA,IAAI,CAAJ,SAAQ,CAAyB,EAC/B,IAAM,EAAa,IAAI,EAGvB,OAFA,EAAW,MAAM,CA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,G,E,Q,S,C,C,C,E,E,E,O,C,a,I,GEnCO,IAAM,EAAsC,AAAkB,YAAlB,OAAO,QAAyB,OAAO,UAAU,EAAK,c,G,E,Q,S,C,C,C,E,E,E,O,C,gB,I,G,I,E,E,SE4EnG,SAAU,EAAoB,CAA+B,SACjE,AAAI,AAAe,IAAf,EAAI,MAAM,CACL,EADT,QAAA,CAII,AAAe,IAAf,EAAI,MAAM,CACL,CAAG,CAAC,EAAE,CAGR,SAAe,CAAQ,EAC5B,OAAO,EAAI,MAAM,CAAC,SAAC,CAAS,CAAE,CAAuB,EAAK,OAAA,EAAG,EAAH,EAAU,EACtE,CACF,C,G,E,Q,S,C,C,C,E,E,E,O,C,W,I,GEpDM,SAAU,EAAY,CAAI,EAC9B,OAAO,CACT,C,G,E,Q,S,C,C,C,E,E,E,O,C,sB,I,G,I,E,E,S,E,E,SEvCM,SAAU,EAAoB,CAAU,EAC5C,MAAO,AAAA,CAAA,EAAA,EAAA,UAAA,AAAA,EAAW,CAAK,CAAC,EAAA,UAAA,CAAkB,CAC5C,C,G,E,Q,S,C,C,C,E,E,E,O,C,kB,I,G,I,E,E,SELM,SAAU,EAAmB,CAAQ,EACzC,OAAO,OAAO,aAAa,EAAI,AAAA,CAAA,EAAA,EAAA,UAAA,AAAA,EAAW,MAAA,EAAG,KAAA,EAAH,CAAG,CAAG,OAAO,aAAa,CAAC,CACvE,C,G,E,Q,S,C,C,C,E,E,E,O,C,mC,I,GEAM,SAAU,EAAiC,CAAU,EAEzD,OAAO,AAAI,UACT,gBACE,CAAA,AAAU,OAAV,GAAkB,AAAiB,UAAjB,OAAO,EAAqB,oBAAsB,IAAI,EAAK,GAAA,EAAG,2HAGtF,C,G,E,Q,S,C,C,C,E,E,E,O,C,a,I,G,I,E,E,S,E,E,SEPM,SAAU,EAAW,CAAU,EACnC,MAAO,AAAA,CAAA,EAAA,EAAA,UAAA,AAAA,EAAW,MAAA,EAAK,KAAA,EAAL,CAAK,CAAG,EAAA,QAAA,CAAgB,CAC5C,C,G,E,Q,S,C,C,C,E,E,E,O,C,W,I,GEEO,IAAM,EAPX,AAAI,AAAkB,YAAlB,OAAO,QAA0B,OAAO,QAAQ,CAI7C,OAAO,QAAQ,CAHb,Y,G,E,Q,S,C,C,C,E,E,E,O,C,qC,I,G,E,E,O,C,uB,I,G,I,E,E,S,E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","sources":["","node_modules/aws-amplify/dist/esm/initSingleton.mjs","node_modules/aws-amplify/src/initSingleton.ts","node_modules/@aws-amplify/core/dist/esm/singleton/Amplify.mjs","node_modules/@aws-amplify/core/src/singleton/Amplify.ts","node_modules/@aws-amplify/core/dist/esm/singleton/Auth/index.mjs","node_modules/@aws-amplify/core/src/singleton/Auth/index.ts","node_modules/@aws-amplify/core/dist/esm/Hub/index.mjs","node_modules/@aws-amplify/core/src/Hub/index.ts","node_modules/@aws-amplify/core/dist/esm/Logger/ConsoleLogger.mjs","node_modules/@aws-amplify/core/src/Logger/ConsoleLogger.ts","node_modules/@aws-amplify/core/dist/esm/Logger/types.mjs","node_modules/@aws-amplify/core/src/Logger/types.ts","node_modules/@aws-amplify/core/dist/esm/constants.mjs","node_modules/@aws-amplify/core/src/constants.ts","node_modules/@aws-amplify/core/dist/esm/errors/AmplifyError.mjs","node_modules/@aws-amplify/core/src/errors/AmplifyError.ts","node_modules/@aws-amplify/core/dist/esm/parseAWSExports.mjs","node_modules/@aws-amplify/core/src/parseAWSExports.ts","node_modules/@aws-amplify/core/dist/esm/utils/deepFreeze.mjs","node_modules/@aws-amplify/core/src/utils/deepFreeze.ts","node_modules/@aws-amplify/core/dist/esm/singleton/constants.mjs","node_modules/@aws-amplify/core/src/singleton/constants.ts","node_modules/@aws-amplify/core/dist/esm/storage/CookieStorage.mjs","node_modules/@aws-amplify/core/src/storage/CookieStorage.ts","node_modules/js-cookie/dist/js.cookie.js","node_modules/@aws-amplify/core/dist/esm/storage/index.mjs","node_modules/@aws-amplify/core/src/storage/index.ts","node_modules/@aws-amplify/core/dist/esm/storage/DefaultStorage.mjs","node_modules/@aws-amplify/core/src/storage/DefaultStorage.ts","node_modules/@aws-amplify/core/dist/esm/storage/KeyValueStorage.mjs","node_modules/@aws-amplify/core/src/storage/KeyValueStorage.ts","node_modules/@aws-amplify/core/dist/esm/errors/PlatformNotSupportedError.mjs","node_modules/@aws-amplify/core/src/errors/PlatformNotSupportedError.ts","node_modules/@aws-amplify/core/dist/esm/types/errors.mjs","node_modules/@aws-amplify/core/src/types/errors.ts","node_modules/@aws-amplify/core/dist/esm/storage/utils.mjs","node_modules/@aws-amplify/core/src/storage/utils.ts","node_modules/@aws-amplify/core/dist/esm/storage/InMemoryStorage.mjs","node_modules/@aws-amplify/core/src/storage/InMemoryStorage.ts","node_modules/@aws-amplify/core/dist/esm/storage/SessionStorage.mjs","node_modules/@aws-amplify/core/src/storage/SessionStorage.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/credentialsProvider/index.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/index.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/credentialsProvider/IdentityIdStore.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/IdentityIdStore.ts","node_modules/@aws-amplify/core/dist/esm/singleton/Auth/utils/index.mjs","node_modules/@aws-amplify/core/src/singleton/Auth/utils/index.ts","node_modules/@aws-amplify/core/dist/esm/singleton/Auth/utils/errorHelpers.mjs","node_modules/@aws-amplify/core/src/singleton/Auth/utils/errorHelpers.ts","node_modules/@aws-amplify/core/dist/esm/errors/createAssertionFunction.mjs","node_modules/@aws-amplify/core/src/errors/createAssertionFunction.ts","node_modules/@aws-amplify/core/dist/esm/utils/convert/base64/base64Decoder.mjs","node_modules/@aws-amplify/core/src/utils/convert/base64/base64Decoder.ts","node_modules/@aws-amplify/core/dist/esm/utils/globalHelpers/index.mjs","node_modules/@aws-amplify/core/src/utils/globalHelpers/index.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/credentialsProvider/types.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/types.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/tokenProvider/TokenStore.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/TokenStore.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/tokenProvider/types.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/types.ts","node_modules/@aws-amplify/auth/dist/esm/errors/AuthError.mjs","node_modules/@aws-amplify/auth/src/errors/AuthError.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/tokenProvider/errorHelpers.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/errorHelpers.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/credentialsProvider/credentialsProvider.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/credentialsProvider.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/credentialsProvider/IdentityIdProvider.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/IdentityIdProvider.ts","node_modules/@aws-amplify/core/dist/esm/awsClients/cognitoIdentity/getId.mjs","node_modules/@aws-amplify/core/src/awsClients/cognitoIdentity/getId.ts","node_modules/@aws-amplify/core/dist/esm/awsClients/cognitoIdentity/base.mjs","node_modules/@aws-amplify/core/src/awsClients/cognitoIdentity/base.ts","node_modules/@aws-amplify/core/dist/esm/clients/endpoints/getDnsSuffix.mjs","node_modules/@aws-amplify/core/src/clients/endpoints/getDnsSuffix.ts","node_modules/@aws-amplify/core/dist/esm/clients/endpoints/partitions.mjs","node_modules/@aws-amplify/core/src/clients/endpoints/partitions.ts","node_modules/@aws-amplify/core/dist/esm/clients/handlers/unauthenticated.mjs","node_modules/@aws-amplify/core/src/clients/handlers/unauthenticated.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/retry/middleware.mjs","node_modules/@aws-amplify/core/src/clients/middleware/retry/middleware.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/userAgent/middleware.mjs","node_modules/@aws-amplify/core/src/clients/middleware/userAgent/middleware.ts","node_modules/@aws-amplify/core/dist/esm/clients/internal/composeTransferHandler.mjs","node_modules/@aws-amplify/core/src/clients/internal/composeTransferHandler.ts","node_modules/@aws-amplify/core/dist/esm/clients/handlers/fetch.mjs","node_modules/@aws-amplify/core/src/clients/handlers/fetch.ts","node_modules/@aws-amplify/core/dist/esm/clients/utils/memoization.mjs","node_modules/@aws-amplify/core/src/clients/utils/memoization.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/retry/jitteredBackoff.mjs","node_modules/@aws-amplify/core/src/clients/middleware/retry/jitteredBackoff.ts","node_modules/@aws-amplify/core/dist/esm/utils/retry/jitteredBackoff.mjs","node_modules/@aws-amplify/core/src/utils/retry/jitteredBackoff.ts","node_modules/@aws-amplify/core/dist/esm/utils/retry/constants.mjs","node_modules/@aws-amplify/core/src/utils/retry/constants.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/retry/defaultRetryDecider.mjs","node_modules/@aws-amplify/core/src/clients/middleware/retry/defaultRetryDecider.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/retry/isClockSkewError.mjs","node_modules/@aws-amplify/core/src/clients/middleware/retry/isClockSkewError.ts","node_modules/@aws-crypto/sha256-js/src/index.ts","node_modules/@aws-crypto/sha256-js/build/module/jsSha256.js","node_modules/@aws-crypto/sha256-js/src/jsSha256.ts","node_modules/tslib/tslib.es6.js","node_modules/@aws-crypto/sha256-js/build/module/constants.js","node_modules/@aws-crypto/sha256-js/src/constants.ts","node_modules/@aws-crypto/sha256-js/build/module/RawSha256.js","node_modules/@aws-crypto/sha256-js/src/RawSha256.ts","node_modules/@aws-crypto/util/build/module/index.js","node_modules/@aws-crypto/util/src/index.ts","node_modules/@aws-crypto/util/build/module/convertToBuffer.js","node_modules/@aws-crypto/util/src/convertToBuffer.ts","node_modules/@smithy/util-utf8/dist-es/index.js","node_modules/@smithy/util-utf8/dist-es/fromUtf8.browser.js","node_modules/@smithy/util-utf8/dist-es/toUint8Array.js","node_modules/@smithy/util-utf8/dist-es/toUtf8.browser.js","node_modules/buffer/index.js","node_modules/base64-js/index.js","node_modules/ieee754/index.js","node_modules/@aws-crypto/util/build/module/isEmptyData.js","node_modules/@aws-crypto/util/src/isEmptyData.ts","node_modules/@aws-crypto/util/build/module/numToUint8.js","node_modules/@aws-crypto/util/src/numToUint8.ts","node_modules/@aws-crypto/util/build/module/uint32ArrayFrom.js","node_modules/@aws-crypto/util/src/uint32ArrayFrom.ts","node_modules/@smithy/util-hex-encoding/dist-es/index.js","node_modules/@aws-amplify/core/dist/esm/utils/amplifyUrl/index.mjs","node_modules/@aws-amplify/core/src/utils/amplifyUrl/index.ts","node_modules/@aws-amplify/core/dist/esm/clients/serde/json.mjs","node_modules/@aws-amplify/core/src/clients/serde/json.ts","node_modules/@aws-amplify/core/dist/esm/clients/serde/responseInfo.mjs","node_modules/@aws-amplify/core/src/clients/serde/responseInfo.ts","node_modules/@aws-amplify/core/dist/esm/Platform/index.mjs","node_modules/@aws-amplify/core/src/Platform/index.ts","node_modules/@aws-amplify/core/dist/esm/Platform/types.mjs","node_modules/@aws-amplify/core/src/Platform/types.ts","node_modules/@aws-amplify/core/dist/esm/Platform/version.mjs","node_modules/@aws-amplify/core/src/Platform/version.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detectFramework.mjs","node_modules/@aws-amplify/core/src/Platform/detectFramework.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detection/index.mjs","node_modules/@aws-amplify/core/src/Platform/detection/index.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detection/React.mjs","node_modules/@aws-amplify/core/src/Platform/detection/React.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detection/helpers.mjs","node_modules/@aws-amplify/core/src/Platform/detection/helpers.ts","node_modules/process/browser.js","node_modules/@aws-amplify/core/dist/esm/Platform/detection/Vue.mjs","node_modules/@aws-amplify/core/src/Platform/detection/Vue.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detection/Svelte.mjs","node_modules/@aws-amplify/core/src/Platform/detection/Svelte.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detection/Next.mjs","node_modules/@aws-amplify/core/src/Platform/detection/Next.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detection/Nuxt.mjs","node_modules/@aws-amplify/core/src/Platform/detection/Nuxt.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detection/Angular.mjs","node_modules/@aws-amplify/core/src/Platform/detection/Angular.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detection/ReactNative.mjs","node_modules/@aws-amplify/core/src/Platform/detection/ReactNative.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detection/Expo.mjs","node_modules/@aws-amplify/core/src/Platform/detection/Expo.ts","node_modules/@aws-amplify/core/dist/esm/Platform/detection/Web.mjs","node_modules/@aws-amplify/core/src/Platform/detection/Web.ts","node_modules/@aws-amplify/core/dist/esm/Platform/customUserAgent.mjs","node_modules/@aws-amplify/core/src/Platform/customUserAgent.ts","node_modules/@aws-amplify/core/dist/esm/clients/internal/composeServiceApi.mjs","node_modules/@aws-amplify/core/src/clients/internal/composeServiceApi.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/utils/clients/CognitoIdentityProvider/utils.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/utils/clients/CognitoIdentityProvider/utils.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/credentialsProvider/utils.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/credentialsProvider/utils.ts","node_modules/@aws-amplify/core/dist/esm/awsClients/cognitoIdentity/getCredentialsForIdentity.mjs","node_modules/@aws-amplify/core/src/awsClients/cognitoIdentity/getCredentialsForIdentity.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/utils/types.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/utils/types.ts","node_modules/@aws-amplify/auth/dist/esm/errors/constants.mjs","node_modules/@aws-amplify/auth/src/errors/constants.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/tokenProvider/tokenProvider.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/tokenProvider.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/tokenProvider/CognitoUserPoolsTokenProvider.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/CognitoUserPoolsTokenProvider.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/utils/refreshAuthTokens.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/utils/refreshAuthTokens.ts","node_modules/@aws-amplify/core/dist/esm/utils/deDupeAsyncFunction.mjs","node_modules/@aws-amplify/core/src/utils/deDupeAsyncFunction.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/utils/clients/CognitoIdentityProvider/index.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/utils/clients/CognitoIdentityProvider/index.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/utils/clients/CognitoIdentityProvider/base.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/utils/clients/CognitoIdentityProvider/base.ts","node_modules/@aws-amplify/auth/dist/esm/errors/utils/assertServiceError.mjs","node_modules/@aws-amplify/auth/src/errors/utils/assertServiceError.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/utils/userContextData.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/utils/userContextData.ts","node_modules/@aws-amplify/auth/dist/esm/providers/cognito/tokenProvider/TokenOrchestrator.mjs","node_modules/@aws-amplify/auth/src/providers/cognito/tokenProvider/TokenOrchestrator.ts","node_modules/@aws-amplify/api/dist/esm/API.mjs","node_modules/@aws-amplify/api/src/API.ts","node_modules/@aws-amplify/api-graphql/dist/esm/internals/generateClient.mjs","node_modules/@aws-amplify/api-graphql/src/internals/generateClient.ts","node_modules/@aws-amplify/api-graphql/dist/esm/internals/v6.mjs","node_modules/@aws-amplify/api-graphql/src/internals/v6.ts","node_modules/@aws-amplify/api-graphql/dist/esm/GraphQLAPI.mjs","node_modules/@aws-amplify/api-graphql/src/GraphQLAPI.ts","node_modules/@aws-amplify/api-graphql/dist/esm/internals/InternalGraphQLAPI.mjs","node_modules/@aws-amplify/api-graphql/src/internals/InternalGraphQLAPI.ts","node_modules/graphql/error/GraphQLError.mjs","node_modules/graphql/jsutils/isObjectLike.mjs","node_modules/graphql/polyfills/symbols.mjs","node_modules/graphql/language/location.mjs","node_modules/graphql/language/printLocation.mjs","node_modules/graphql/language/parser.mjs","node_modules/graphql/error/syntaxError.mjs","node_modules/graphql/language/kinds.mjs","node_modules/graphql/language/ast.mjs","node_modules/graphql/jsutils/defineInspect.mjs","node_modules/graphql/jsutils/invariant.mjs","node_modules/graphql/jsutils/nodejsCustomInspectSymbol.mjs","node_modules/graphql/language/tokenKind.mjs","node_modules/graphql/language/source.mjs","node_modules/graphql/jsutils/inspect.mjs","node_modules/graphql/jsutils/devAssert.mjs","node_modules/graphql/jsutils/instanceOf.mjs","node_modules/graphql/language/directiveLocation.mjs","node_modules/graphql/language/lexer.mjs","node_modules/graphql/language/blockString.mjs","node_modules/graphql/language/printer.mjs","node_modules/graphql/language/visitor.mjs","node_modules/rxjs/dist/esm5/internal/operators/catchError.js","node_modules/rxjs/src/internal/operators/catchError.ts","node_modules/rxjs/dist/esm5/internal/observable/innerFrom.js","node_modules/rxjs/src/internal/observable/innerFrom.ts","node_modules/rxjs/dist/esm5/internal/util/isArrayLike.js","node_modules/rxjs/src/internal/util/isArrayLike.ts","node_modules/rxjs/dist/esm5/internal/util/isPromise.js","node_modules/rxjs/src/internal/util/isPromise.ts","node_modules/rxjs/dist/esm5/internal/util/isFunction.js","node_modules/rxjs/src/internal/util/isFunction.ts","node_modules/rxjs/dist/esm5/internal/Observable.js","node_modules/rxjs/src/internal/Observable.ts","node_modules/rxjs/dist/esm5/internal/Subscriber.js","node_modules/rxjs/src/internal/Subscriber.ts","node_modules/rxjs/dist/esm5/internal/Subscription.js","node_modules/rxjs/src/internal/Subscription.ts","node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js","node_modules/rxjs/src/internal/util/UnsubscriptionError.ts","node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js","node_modules/rxjs/src/internal/util/createErrorClass.ts","node_modules/rxjs/dist/esm5/internal/util/arrRemove.js","node_modules/rxjs/src/internal/util/arrRemove.ts","node_modules/rxjs/dist/esm5/internal/config.js","node_modules/rxjs/src/internal/config.ts","node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js","node_modules/rxjs/src/internal/util/reportUnhandledError.ts","node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js","node_modules/rxjs/src/internal/scheduler/timeoutProvider.ts","node_modules/rxjs/dist/esm5/internal/util/noop.js","node_modules/rxjs/src/internal/util/noop.ts","node_modules/rxjs/dist/esm5/internal/NotificationFactories.js","node_modules/rxjs/src/internal/NotificationFactories.ts","node_modules/rxjs/dist/esm5/internal/util/errorContext.js","node_modules/rxjs/src/internal/util/errorContext.ts","node_modules/rxjs/dist/esm5/internal/symbol/observable.js","node_modules/rxjs/src/internal/symbol/observable.ts","node_modules/rxjs/dist/esm5/internal/util/pipe.js","node_modules/rxjs/src/internal/util/pipe.ts","node_modules/rxjs/dist/esm5/internal/util/identity.js","node_modules/rxjs/src/internal/util/identity.ts","node_modules/rxjs/dist/esm5/internal/util/isInteropObservable.js","node_modules/rxjs/src/internal/util/isInteropObservable.ts","node_modules/rxjs/dist/esm5/internal/util/isAsyncIterable.js","node_modules/rxjs/src/internal/util/isAsyncIterable.ts","node_modules/rxjs/dist/esm5/internal/util/throwUnobservableError.js","node_modules/rxjs/src/internal/util/throwUnobservableError.ts","node_modules/rxjs/dist/esm5/internal/util/isIterable.js","node_modules/rxjs/src/internal/util/isIterable.ts","node_modules/rxjs/dist/esm5/internal/symbol/iterator.js","node_modules/rxjs/src/internal/symbol/iterator.ts","node_modules/rxjs/dist/esm5/internal/util/isReadableStreamLike.js","node_modules/rxjs/src/internal/util/isReadableStreamLike.ts","node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js","node_modules/rxjs/src/internal/operators/OperatorSubscriber.ts","node_modules/rxjs/dist/esm5/internal/util/lift.js","node_modules/rxjs/src/internal/util/lift.ts","node_modules/@aws-amplify/api-graphql/dist/esm/types/index.mjs","node_modules/@aws-amplify/api-graphql/src/types/index.ts","node_modules/@aws-amplify/api-rest/dist/esm/errors/CanceledError.mjs","node_modules/@aws-amplify/api-rest/src/errors/CanceledError.ts","node_modules/@aws-amplify/api-rest/dist/esm/errors/RestApiError.mjs","node_modules/@aws-amplify/api-rest/src/errors/RestApiError.ts","node_modules/@aws-amplify/core/dist/esm/errors/APIError.mjs","node_modules/@aws-amplify/core/src/errors/APIError.ts","node_modules/@aws-amplify/api-rest/dist/esm/apis/index.mjs","node_modules/@aws-amplify/api-rest/src/apis/index.ts","node_modules/@aws-amplify/api-rest/dist/esm/apis/common/publicApis.mjs","node_modules/@aws-amplify/api-rest/src/apis/common/publicApis.ts","node_modules/@aws-amplify/api-rest/dist/esm/utils/createCancellableOperation.mjs","node_modules/@aws-amplify/api-rest/src/utils/createCancellableOperation.ts","node_modules/@aws-amplify/api-rest/dist/esm/errors/validation.mjs","node_modules/@aws-amplify/api-rest/src/errors/validation.ts","node_modules/@aws-amplify/api-rest/dist/esm/utils/serviceError.mjs","node_modules/@aws-amplify/api-rest/src/utils/serviceError.ts","node_modules/@aws-amplify/api-rest/dist/esm/utils/logger.mjs","node_modules/@aws-amplify/api-rest/src/utils/logger.ts","node_modules/@aws-amplify/api-rest/dist/esm/utils/parseSigningInfo.mjs","node_modules/@aws-amplify/api-rest/src/utils/parseSigningInfo.ts","node_modules/@aws-amplify/api-rest/dist/esm/utils/constants.mjs","node_modules/@aws-amplify/api-rest/src/utils/constants.ts","node_modules/@aws-amplify/api-rest/dist/esm/utils/resolveApiUrl.mjs","node_modules/@aws-amplify/api-rest/src/utils/resolveApiUrl.ts","node_modules/@aws-amplify/api-rest/dist/esm/errors/assertValidatonError.mjs","node_modules/@aws-amplify/api-rest/src/errors/assertValidatonError.ts","node_modules/@aws-amplify/api-rest/dist/esm/apis/common/handler.mjs","node_modules/@aws-amplify/api-rest/src/apis/common/handler.ts","node_modules/@aws-amplify/core/dist/esm/clients/handlers/authenticated.mjs","node_modules/@aws-amplify/core/src/clients/handlers/authenticated.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/middleware.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/middleware.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/signRequest.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/signRequest.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getSignedHeaders.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getSigningValues.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getCredentialScope.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/constants.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/constants.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getFormattedDates.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getSignature.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getSignature.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/dataHashHelpers.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalRequest.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalHeaders.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalQueryString.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getCanonicalUri.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getHashedPayload.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getSigningKey.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/signer/signatureV4/utils/getStringToSign.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/utils/getSkewCorrectedDate.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/utils/getSkewCorrectedDate.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/utils/getUpdatedSystemClockOffset.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/utils/getUpdatedSystemClockOffset.ts","node_modules/@aws-amplify/core/dist/esm/clients/middleware/signing/utils/isClockSkewed.mjs","node_modules/@aws-amplify/core/src/clients/middleware/signing/utils/isClockSkewed.ts","node_modules/@aws-amplify/api-rest/dist/esm/utils/resolveHeaders.mjs","node_modules/@aws-amplify/api-rest/src/utils/resolveHeaders.ts","node_modules/@aws-amplify/api-rest/dist/esm/internals/index.mjs","node_modules/@aws-amplify/api-rest/src/internals/index.ts","node_modules/@aws-amplify/api-rest/dist/esm/apis/common/internalPost.mjs","node_modules/@aws-amplify/api-rest/src/apis/common/internalPost.ts","node_modules/@aws-amplify/api-graphql/dist/esm/Providers/AWSAppSyncRealTimeProvider/index.mjs","node_modules/@aws-amplify/api-graphql/src/Providers/AWSAppSyncRealTimeProvider/index.ts","node_modules/@aws-amplify/core/dist/esm/singleton/apis/fetchAuthSession.mjs","node_modules/@aws-amplify/core/src/singleton/apis/fetchAuthSession.ts","node_modules/@aws-amplify/core/dist/esm/singleton/apis/internal/fetchAuthSession.mjs","node_modules/@aws-amplify/core/src/singleton/apis/internal/fetchAuthSession.ts","node_modules/@aws-amplify/core/dist/esm/utils/amplifyUuid/index.mjs","node_modules/@aws-amplify/core/src/utils/amplifyUuid/index.ts","node_modules/uuid/dist/esm-browser/v4.js","node_modules/uuid/dist/esm-browser/native.js","node_modules/uuid/dist/esm-browser/rng.js","node_modules/uuid/dist/esm-browser/stringify.js","node_modules/uuid/dist/esm-browser/validate.js","node_modules/uuid/dist/esm-browser/regex.js","node_modules/@aws-amplify/core/dist/esm/utils/convert/base64/base64Encoder.mjs","node_modules/@aws-amplify/core/src/utils/convert/base64/base64Encoder.ts","node_modules/@aws-amplify/core/dist/esm/utils/convert/base64/bytesToString.mjs","node_modules/@aws-amplify/core/src/utils/convert/base64/bytesToString.ts","node_modules/@aws-amplify/core/dist/esm/utils/retry/isNonRetryableError.mjs","node_modules/@aws-amplify/core/src/utils/retry/isNonRetryableError.ts","node_modules/@aws-amplify/core/dist/esm/utils/retry/jitteredExponentialRetry.mjs","node_modules/@aws-amplify/core/src/utils/retry/jitteredExponentialRetry.ts","node_modules/@aws-amplify/core/dist/esm/utils/retry/retry.mjs","node_modules/@aws-amplify/core/src/utils/retry/retry.ts","node_modules/@aws-amplify/core/dist/esm/utils/retry/NonRetryableError.mjs","node_modules/@aws-amplify/core/src/utils/retry/NonRetryableError.ts","node_modules/@aws-amplify/api-graphql/dist/esm/types/PubSub.mjs","node_modules/@aws-amplify/api-graphql/src/types/PubSub.ts","node_modules/@aws-amplify/api-graphql/dist/esm/Providers/constants.mjs","node_modules/@aws-amplify/api-graphql/src/Providers/constants.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/ConnectionStateMonitor.mjs","node_modules/@aws-amplify/api-graphql/src/utils/ConnectionStateMonitor.ts","node_modules/rxjs/dist/esm5/internal/operators/filter.js","node_modules/rxjs/src/internal/operators/filter.ts","node_modules/rxjs/dist/esm5/internal/operators/map.js","node_modules/rxjs/src/internal/operators/map.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/ReachabilityMonitor/index.mjs","node_modules/@aws-amplify/api-graphql/src/utils/ReachabilityMonitor/index.ts","node_modules/@aws-amplify/core/dist/esm/Reachability/Reachability.mjs","node_modules/@aws-amplify/core/src/Reachability/Reachability.ts","node_modules/rxjs/dist/esm5/internal/observable/from.js","node_modules/rxjs/src/internal/observable/from.ts","node_modules/rxjs/dist/esm5/internal/scheduled/scheduled.js","node_modules/rxjs/src/internal/scheduled/scheduled.ts","node_modules/rxjs/dist/esm5/internal/scheduled/scheduleObservable.js","node_modules/rxjs/src/internal/scheduled/scheduleObservable.ts","node_modules/rxjs/dist/esm5/internal/operators/observeOn.js","node_modules/rxjs/src/internal/operators/observeOn.ts","node_modules/rxjs/dist/esm5/internal/util/executeSchedule.js","node_modules/rxjs/src/internal/util/executeSchedule.ts","node_modules/rxjs/dist/esm5/internal/operators/subscribeOn.js","node_modules/rxjs/src/internal/operators/subscribeOn.ts","node_modules/rxjs/dist/esm5/internal/scheduled/schedulePromise.js","node_modules/rxjs/src/internal/scheduled/schedulePromise.ts","node_modules/rxjs/dist/esm5/internal/scheduled/scheduleArray.js","node_modules/rxjs/src/internal/scheduled/scheduleArray.ts","node_modules/rxjs/dist/esm5/internal/scheduled/scheduleIterable.js","node_modules/rxjs/src/internal/scheduled/scheduleIterable.ts","node_modules/rxjs/dist/esm5/internal/scheduled/scheduleAsyncIterable.js","node_modules/rxjs/src/internal/scheduled/scheduleAsyncIterable.ts","node_modules/rxjs/dist/esm5/internal/scheduled/scheduleReadableStreamLike.js","node_modules/rxjs/src/internal/scheduled/scheduleReadableStreamLike.ts","node_modules/@aws-amplify/core/dist/esm/utils/isWebWorker.mjs","node_modules/@aws-amplify/core/src/utils/isWebWorker.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/ReconnectionMonitor.mjs","node_modules/@aws-amplify/api-graphql/src/utils/ReconnectionMonitor.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/resolveConfig.mjs","node_modules/@aws-amplify/api-graphql/src/utils/resolveConfig.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/errors/assertValidationError.mjs","node_modules/@aws-amplify/api-graphql/src/utils/errors/assertValidationError.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/errors/GraphQLApiError.mjs","node_modules/@aws-amplify/api-graphql/src/utils/errors/GraphQLApiError.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/errors/validation.mjs","node_modules/@aws-amplify/api-graphql/src/utils/errors/validation.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/resolveLibraryOptions.mjs","node_modules/@aws-amplify/api-graphql/src/utils/resolveLibraryOptions.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/errors/repackageAuthError.mjs","node_modules/@aws-amplify/api-graphql/src/utils/errors/repackageAuthError.ts","node_modules/@aws-amplify/api-graphql/dist/esm/internals/generateModelsProperty.mjs","node_modules/@aws-amplify/api-graphql/src/internals/generateModelsProperty.ts","node_modules/@aws-amplify/api-graphql/dist/esm/internals/APIClient.mjs","node_modules/@aws-amplify/api-graphql/src/internals/APIClient.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/resolveOwnerFields.mjs","node_modules/@aws-amplify/api-graphql/src/utils/resolveOwnerFields.ts","node_modules/@aws-amplify/api-graphql/dist/esm/internals/operations/list.mjs","node_modules/@aws-amplify/api-graphql/src/internals/operations/list.ts","node_modules/@aws-amplify/api-graphql/dist/esm/internals/operations/get.mjs","node_modules/@aws-amplify/api-graphql/src/internals/operations/get.ts","node_modules/@aws-amplify/api-graphql/dist/esm/internals/operations/subscription.mjs","node_modules/@aws-amplify/api-graphql/src/internals/operations/subscription.ts","node_modules/@aws-amplify/api-graphql/dist/esm/internals/operations/observeQuery.mjs","node_modules/@aws-amplify/api-graphql/src/internals/operations/observeQuery.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/resolvePKFields.mjs","node_modules/@aws-amplify/api-graphql/src/utils/resolvePKFields.ts","node_modules/@aws-amplify/api-graphql/dist/esm/utils/findIndexByFields.mjs","node_modules/@aws-amplify/api-graphql/src/utils/findIndexByFields.ts","src/amplifyconfiguration.json"],"sourcesContent":["\nfunction $parcel$export(e, n, v, s) {\n Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});\n}\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n\n var $parcel$global = globalThis;\n \nvar $parcel$modules = {};\nvar $parcel$inits = {};\n\nvar parcelRequire = $parcel$global[\"parcelRequire4c8b\"];\n\nif (parcelRequire == null) {\n parcelRequire = function(id) {\n if (id in $parcel$modules) {\n return $parcel$modules[id].exports;\n }\n if (id in $parcel$inits) {\n var init = $parcel$inits[id];\n delete $parcel$inits[id];\n var module = {id: id, exports: {}};\n $parcel$modules[id] = module;\n init.call(module.exports, module, module.exports);\n return module.exports;\n }\n var err = new Error(\"Cannot find module '\" + id + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n };\n\n parcelRequire.register = function register(id, init) {\n $parcel$inits[id] = init;\n };\n\n $parcel$global[\"parcelRequire4c8b\"] = parcelRequire;\n}\n\nvar parcelRegister = parcelRequire.register;\nparcelRegister(\"72z4V\", function(module, exports) {\n\n$parcel$export(module.exports, \"DefaultAmplify\", () => $8462ca0fe1ef67cb$export$11ac3725994bec7b);\n\nvar $1qbEC = parcelRequire(\"1qbEC\");\nvar $lKsZv = parcelRequire(\"lKsZv\");\nvar $57Of0 = parcelRequire(\"57Of0\");\n\nvar $FIaO4 = parcelRequire(\"FIaO4\");\n\nvar $e2NQk = parcelRequire(\"e2NQk\");\nvar $54W3M = parcelRequire(\"54W3M\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $8462ca0fe1ef67cb$export$11ac3725994bec7b = {\n /**\n * Configures Amplify with the {@link resourceConfig} and {@link libraryOptions}.\n *\n * @param resourceConfig The {@link ResourcesConfig} object that is typically imported from the\n * `amplifyconfiguration.json` file. It can also be an object literal created inline when calling `Amplify.configure`.\n * @param libraryOptions The {@link LibraryOptions} additional options for the library.\n *\n * @example\n * import config from './amplifyconfiguration.json';\n *\n * Amplify.configure(config);\n */ configure (resourceConfig, libraryOptions) {\n let resolvedResourceConfig;\n if (Object.keys(resourceConfig).some((key)=>key.startsWith(\"aws_\"))) resolvedResourceConfig = (0, $FIaO4.parseAWSExports)(resourceConfig);\n else resolvedResourceConfig = resourceConfig;\n // If no Auth config is provided, no special handling will be required, configure as is.\n // Otherwise, we can assume an Auth config is provided from here on.\n if (!resolvedResourceConfig.Auth) return (0, $1qbEC.Amplify).configure(resolvedResourceConfig, libraryOptions);\n // If Auth options are provided, always just configure as is.\n // Otherwise, we can assume no Auth libraryOptions were provided from here on.\n if (libraryOptions?.Auth) return (0, $1qbEC.Amplify).configure(resolvedResourceConfig, libraryOptions);\n // If no Auth libraryOptions were previously configured, then always add default providers.\n if (!(0, $1qbEC.Amplify).libraryOptions.Auth) {\n (0, $54W3M.cognitoUserPoolsTokenProvider).setAuthConfig(resolvedResourceConfig.Auth);\n (0, $54W3M.cognitoUserPoolsTokenProvider).setKeyValueStorage(// TODO: allow configure with a public interface\n libraryOptions?.ssr ? new (0, $lKsZv.CookieStorage)({\n sameSite: \"lax\"\n }) : (0, $57Of0.defaultStorage));\n return (0, $1qbEC.Amplify).configure(resolvedResourceConfig, {\n ...libraryOptions,\n Auth: {\n tokenProvider: (0, $54W3M.cognitoUserPoolsTokenProvider),\n credentialsProvider: (0, $e2NQk.cognitoCredentialsProvider)\n }\n });\n }\n // At this point, Auth libraryOptions would have been previously configured and no overriding\n // Auth options were given, so we should preserve the currently configured Auth libraryOptions.\n if (libraryOptions) {\n // If ssr is provided through libraryOptions, we should respect the intentional reconfiguration.\n if (libraryOptions.ssr !== undefined) (0, $54W3M.cognitoUserPoolsTokenProvider).setKeyValueStorage(// TODO: allow configure with a public interface\n libraryOptions.ssr ? new (0, $lKsZv.CookieStorage)({\n sameSite: \"lax\"\n }) : (0, $57Of0.defaultStorage));\n return (0, $1qbEC.Amplify).configure(resolvedResourceConfig, {\n Auth: (0, $1qbEC.Amplify).libraryOptions.Auth,\n ...libraryOptions\n });\n }\n // Finally, if there were no libraryOptions given at all, we should simply not touch the currently\n // configured libraryOptions.\n (0, $1qbEC.Amplify).configure(resolvedResourceConfig);\n },\n /**\n * Returns the {@link ResourcesConfig} object passed in as the `resourceConfig` parameter when calling\n * `Amplify.configure`.\n *\n * @returns An {@link ResourcesConfig} object.\n */ getConfig () {\n return (0, $1qbEC.Amplify).getConfig();\n }\n};\n\n});\nparcelRegister(\"1qbEC\", function(module, exports) {\n\n$parcel$export(module.exports, \"Amplify\", () => $30fdc25c6f443021$export$a3858a9a153cffc7);\n\nvar $hMbLp = parcelRequire(\"hMbLp\");\n\nvar $5RCQ5 = parcelRequire(\"5RCQ5\");\n\nvar $FIaO4 = parcelRequire(\"FIaO4\");\n\n\n\nvar $iceoz = parcelRequire(\"iceoz\");\n\nvar $43O8I = parcelRequire(\"43O8I\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass $30fdc25c6f443021$export$b412d755cfa0136 {\n constructor(){\n this.oAuthListener = undefined;\n this.resourcesConfig = {};\n this.libraryOptions = {};\n this.Auth = new (0, $hMbLp.AuthClass)();\n }\n /**\n * Configures Amplify for use with your back-end resources.\n *\n * @remarks\n * This API does not perform any merging of either `resourcesConfig` or `libraryOptions`. The most recently\n * provided values will be used after configuration.\n *\n * @remarks\n * `configure` can be used to specify additional library options where available for supported categories.\n *\n * @param resourceConfig - Back-end resource configuration. Typically provided via the `aws-exports.js` file.\n * @param libraryOptions - Additional options for customizing the behavior of the library.\n */ configure(resourcesConfig, libraryOptions) {\n let resolvedResourceConfig;\n if (Object.keys(resourcesConfig).some((key)=>key.startsWith(\"aws_\"))) resolvedResourceConfig = (0, $FIaO4.parseAWSExports)(resourcesConfig);\n else resolvedResourceConfig = resourcesConfig;\n this.resourcesConfig = resolvedResourceConfig;\n if (libraryOptions) this.libraryOptions = libraryOptions;\n // Make resource config immutable\n this.resourcesConfig = (0, $iceoz.deepFreeze)(this.resourcesConfig);\n this.Auth.configure(this.resourcesConfig.Auth, this.libraryOptions.Auth);\n (0, $5RCQ5.Hub).dispatch(\"core\", {\n event: \"configure\",\n data: this.resourcesConfig\n }, \"Configure\", (0, $5RCQ5.AMPLIFY_SYMBOL));\n this.notifyOAuthListener();\n }\n /**\n * Provides access to the current back-end resource configuration for the Library.\n *\n * @returns Returns the immutable back-end resource configuration.\n */ getConfig() {\n return this.resourcesConfig;\n }\n /** @internal */ [(0, $43O8I.ADD_OAUTH_LISTENER)](listener) {\n if (this.resourcesConfig.Auth?.Cognito.loginWith?.oauth) // when Amplify has been configured with a valid OAuth config while adding the listener, run it directly\n listener(this.resourcesConfig.Auth?.Cognito);\n else // otherwise register the listener and run it later when Amplify gets configured with a valid oauth config\n this.oAuthListener = listener;\n }\n notifyOAuthListener() {\n if (!this.resourcesConfig.Auth?.Cognito.loginWith?.oauth || !this.oAuthListener) return;\n this.oAuthListener(this.resourcesConfig.Auth?.Cognito);\n // the listener should only be notified once with a valid oauth config\n this.oAuthListener = undefined;\n }\n}\n/**\n * The `Amplify` utility is used to configure the library.\n *\n * @remarks\n * `Amplify` is responsible for orchestrating cross-category communication within the library.\n */ const $30fdc25c6f443021$export$a3858a9a153cffc7 = new $30fdc25c6f443021$export$b412d755cfa0136();\n\n});\nparcelRegister(\"hMbLp\", function(module, exports) {\n\n$parcel$export(module.exports, \"isTokenExpired\", () => $af0fe83fb084e5d7$export$b007d77a962aa175);\n$parcel$export(module.exports, \"AuthClass\", () => $af0fe83fb084e5d7$export$eeff9d1a8b8c057b);\nfunction $af0fe83fb084e5d7$export$b007d77a962aa175({ expiresAt: expiresAt, clockDrift: clockDrift }) {\n const currentTime = Date.now();\n return currentTime + clockDrift > expiresAt;\n}\nclass $af0fe83fb084e5d7$export$eeff9d1a8b8c057b {\n constructor(){}\n /**\n * Configure Auth category\n *\n * @internal\n *\n * @param authResourcesConfig - Resources configurations required by Auth providers.\n * @param authOptions - Client options used by library\n *\n * @returns void\n */ configure(authResourcesConfig, authOptions) {\n this.authConfig = authResourcesConfig;\n this.authOptions = authOptions;\n }\n /**\n * Fetch the auth tokens, and the temporary AWS credentials and identity if they are configured. By default it\n * does not refresh the auth tokens or credentials if they are loaded in storage already. You can force a refresh\n * with `{ forceRefresh: true }` input.\n *\n * @param options - Options configuring the fetch behavior.\n *\n * @returns Promise of current auth session {@link AuthSession}.\n */ async fetchAuthSession(options = {}) {\n let tokens;\n let credentialsAndIdentityId;\n let userSub;\n // Get tokens will throw if session cannot be refreshed (network or service error) or return null if not available\n tokens = await this.getTokens(options);\n if (tokens) {\n userSub = tokens.accessToken?.payload?.sub;\n // getCredentialsAndIdentityId will throw if cannot get credentials (network or service error)\n credentialsAndIdentityId = await this.authOptions?.credentialsProvider?.getCredentialsAndIdentityId({\n authConfig: this.authConfig,\n tokens: tokens,\n authenticated: true,\n forceRefresh: options.forceRefresh\n });\n } else // getCredentialsAndIdentityId will throw if cannot get credentials (network or service error)\n credentialsAndIdentityId = await this.authOptions?.credentialsProvider?.getCredentialsAndIdentityId({\n authConfig: this.authConfig,\n authenticated: false,\n forceRefresh: options.forceRefresh\n });\n return {\n tokens: tokens,\n credentials: credentialsAndIdentityId?.credentials,\n identityId: credentialsAndIdentityId?.identityId,\n userSub: userSub\n };\n }\n async clearCredentials() {\n if (this.authOptions?.credentialsProvider) return await this.authOptions.credentialsProvider.clearCredentialsAndIdentityId();\n }\n async getTokens(options) {\n return await this.authOptions?.tokenProvider?.getTokens(options) ?? undefined;\n }\n}\n\n});\n\nparcelRegister(\"5RCQ5\", function(module, exports) {\n\n$parcel$export(module.exports, \"AMPLIFY_SYMBOL\", () => $008d8f6886d8544f$export$aadf71dd9875dd20);\n$parcel$export(module.exports, \"Hub\", () => $008d8f6886d8544f$export$8c41bb232f1008b1);\n\nvar $gJw02 = parcelRequire(\"gJw02\");\n\nvar $1ZViM = parcelRequire(\"1ZViM\");\n\nvar $e0exy = parcelRequire(\"e0exy\");\n\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $008d8f6886d8544f$export$aadf71dd9875dd20 = typeof Symbol !== \"undefined\" ? Symbol(\"amplify_default\") : \"@@amplify_default\";\nconst $008d8f6886d8544f$var$logger = new (0, $gJw02.ConsoleLogger)(\"Hub\");\nclass $008d8f6886d8544f$export$6b38ef2be9abbbb9 {\n constructor(name){\n this.listeners = new Map();\n this.protectedChannels = [\n \"core\",\n \"auth\",\n \"api\",\n \"analytics\",\n \"interactions\",\n \"pubsub\",\n \"storage\",\n \"ui\",\n \"xr\"\n ];\n this.name = name;\n }\n /**\n * Used internally to remove a Hub listener.\n *\n * @remarks\n * This private method is for internal use only. Instead of calling Hub.remove, call the result of Hub.listen.\n */ _remove(channel, listener) {\n const holder = this.listeners.get(channel);\n if (!holder) {\n $008d8f6886d8544f$var$logger.warn(`No listeners for ${channel}`);\n return;\n }\n this.listeners.set(channel, [\n ...holder.filter(({ callback: callback })=>callback !== listener)\n ]);\n }\n dispatch(channel, payload, source, ampSymbol) {\n if (typeof channel === \"string\" && this.protectedChannels.indexOf(channel) > -1) {\n const hasAccess = ampSymbol === $008d8f6886d8544f$export$aadf71dd9875dd20;\n if (!hasAccess) $008d8f6886d8544f$var$logger.warn(`WARNING: ${channel} is protected and dispatching on it can have unintended consequences`);\n }\n const capsule = {\n channel: channel,\n payload: {\n ...payload\n },\n source: source,\n patternInfo: []\n };\n try {\n this._toListeners(capsule);\n } catch (e) {\n $008d8f6886d8544f$var$logger.error(e);\n }\n }\n listen(channel, callback, listenerName = \"noname\") {\n let cb;\n if (typeof callback !== \"function\") throw new (0, $e0exy.AmplifyError)({\n name: (0, $1ZViM.NO_HUBCALLBACK_PROVIDED_EXCEPTION),\n message: \"No callback supplied to Hub\"\n });\n else // Needs to be casted as a more generic type\n cb = callback;\n let holder = this.listeners.get(channel);\n if (!holder) {\n holder = [];\n this.listeners.set(channel, holder);\n }\n holder.push({\n name: listenerName,\n callback: cb\n });\n return ()=>{\n this._remove(channel, cb);\n };\n }\n _toListeners(capsule) {\n const { channel: channel, payload: payload } = capsule;\n const holder = this.listeners.get(channel);\n if (holder) holder.forEach((listener)=>{\n $008d8f6886d8544f$var$logger.debug(`Dispatching to ${channel} with `, payload);\n try {\n listener.callback(capsule);\n } catch (e) {\n $008d8f6886d8544f$var$logger.error(e);\n }\n });\n }\n}\n/*We export a __default__ instance of HubClass to use it as a\npseudo Singleton for the main messaging bus, however you can still create\nyour own instance of HubClass() for a separate \"private bus\" of events.*/ const $008d8f6886d8544f$export$8c41bb232f1008b1 = new $008d8f6886d8544f$export$6b38ef2be9abbbb9(\"__default__\");\n/**\n * @internal\n *\n * Internal hub used for core Amplify functionality. Not intended for use outside of Amplify.\n *\n */ const $008d8f6886d8544f$export$45dde0743a4c8d6e = new $008d8f6886d8544f$export$6b38ef2be9abbbb9(\"internal-hub\");\n\n});\nparcelRegister(\"gJw02\", function(module, exports) {\n\n$parcel$export(module.exports, \"ConsoleLogger\", () => $4b398182966a4810$export$ba6a9c7ac8291f7f);\n\nvar $4qg9e = parcelRequire(\"4qg9e\");\n\nvar $1ZViM = parcelRequire(\"1ZViM\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $4b398182966a4810$var$LOG_LEVELS = {\n VERBOSE: 1,\n DEBUG: 2,\n INFO: 3,\n WARN: 4,\n ERROR: 5\n};\n/**\n * Write logs\n * @class Logger\n */ class $4b398182966a4810$export$ba6a9c7ac8291f7f {\n /**\n * @constructor\n * @param {string} name - Name of the logger\n */ constructor(name, level = (0, $4qg9e.LogType).WARN){\n this.name = name;\n this.level = level;\n this._pluggables = [];\n }\n _padding(n) {\n return n < 10 ? \"0\" + n : \"\" + n;\n }\n _ts() {\n const dt = new Date();\n return [\n this._padding(dt.getMinutes()),\n this._padding(dt.getSeconds())\n ].join(\":\") + \".\" + dt.getMilliseconds();\n }\n configure(config) {\n if (!config) return this._config;\n this._config = config;\n return this._config;\n }\n /**\n * Write log\n * @method\n * @memeberof Logger\n * @param {LogType|string} type - log type, default INFO\n * @param {string|object} msg - Logging message or object\n */ _log(type, ...msg) {\n let logger_level_name = this.level;\n if ($4b398182966a4810$export$ba6a9c7ac8291f7f.LOG_LEVEL) logger_level_name = $4b398182966a4810$export$ba6a9c7ac8291f7f.LOG_LEVEL;\n if (typeof window !== \"undefined\" && window.LOG_LEVEL) logger_level_name = window.LOG_LEVEL;\n const logger_level = $4b398182966a4810$var$LOG_LEVELS[logger_level_name];\n const type_level = $4b398182966a4810$var$LOG_LEVELS[type];\n if (!(type_level >= logger_level)) // Do nothing if type is not greater than or equal to logger level (handle undefined)\n return;\n let log = console.log.bind(console);\n if (type === (0, $4qg9e.LogType).ERROR && console.error) log = console.error.bind(console);\n if (type === (0, $4qg9e.LogType).WARN && console.warn) log = console.warn.bind(console);\n const prefix = `[${type}] ${this._ts()} ${this.name}`;\n let message = \"\";\n if (msg.length === 1 && typeof msg[0] === \"string\") {\n message = `${prefix} - ${msg[0]}`;\n log(message);\n } else if (msg.length === 1) {\n message = `${prefix} ${msg[0]}`;\n log(prefix, msg[0]);\n } else if (typeof msg[0] === \"string\") {\n let obj = msg.slice(1);\n if (obj.length === 1) obj = obj[0];\n message = `${prefix} - ${msg[0]} ${obj}`;\n log(`${prefix} - ${msg[0]}`, obj);\n } else {\n message = `${prefix} ${msg}`;\n log(prefix, msg);\n }\n for (const plugin of this._pluggables){\n const logEvent = {\n message: message,\n timestamp: Date.now()\n };\n plugin.pushLogs([\n logEvent\n ]);\n }\n }\n /**\n * Write General log. Default to INFO\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */ log(...msg) {\n this._log((0, $4qg9e.LogType).INFO, ...msg);\n }\n /**\n * Write INFO log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */ info(...msg) {\n this._log((0, $4qg9e.LogType).INFO, ...msg);\n }\n /**\n * Write WARN log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */ warn(...msg) {\n this._log((0, $4qg9e.LogType).WARN, ...msg);\n }\n /**\n * Write ERROR log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */ error(...msg) {\n this._log((0, $4qg9e.LogType).ERROR, ...msg);\n }\n /**\n * Write DEBUG log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */ debug(...msg) {\n this._log((0, $4qg9e.LogType).DEBUG, ...msg);\n }\n /**\n * Write VERBOSE log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */ verbose(...msg) {\n this._log((0, $4qg9e.LogType).VERBOSE, ...msg);\n }\n addPluggable(pluggable) {\n if (pluggable && pluggable.getCategoryName() === (0, $1ZViM.AWS_CLOUDWATCH_CATEGORY)) {\n this._pluggables.push(pluggable);\n pluggable.configure(this._config);\n }\n }\n listPluggables() {\n return this._pluggables;\n }\n}\n$4b398182966a4810$export$ba6a9c7ac8291f7f.LOG_LEVEL = null;\n\n});\nparcelRegister(\"4qg9e\", function(module, exports) {\n\n$parcel$export(module.exports, \"LogType\", () => $efbbd0209ea980b7$export$a0472aa3a356446c);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar $efbbd0209ea980b7$export$a0472aa3a356446c;\n(function(LogType) {\n LogType[\"DEBUG\"] = \"DEBUG\";\n LogType[\"ERROR\"] = \"ERROR\";\n LogType[\"INFO\"] = \"INFO\";\n LogType[\"WARN\"] = \"WARN\";\n LogType[\"VERBOSE\"] = \"VERBOSE\";\n})($efbbd0209ea980b7$export$a0472aa3a356446c || ($efbbd0209ea980b7$export$a0472aa3a356446c = {}));\n\n});\n\nparcelRegister(\"1ZViM\", function(module, exports) {\n\n$parcel$export(module.exports, \"AWS_CLOUDWATCH_CATEGORY\", () => $e362d339f3c21ca2$export$13470c6f1642bbce);\n$parcel$export(module.exports, \"USER_AGENT_HEADER\", () => $e362d339f3c21ca2$export$16032fc466434892);\n$parcel$export(module.exports, \"NO_HUBCALLBACK_PROVIDED_EXCEPTION\", () => $e362d339f3c21ca2$export$86d53207c3c20049);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Logging constants\nconst $e362d339f3c21ca2$export$13470c6f1642bbce = \"Logging\";\nconst $e362d339f3c21ca2$export$16032fc466434892 = \"x-amz-user-agent\";\n// Error exception code constants\nconst $e362d339f3c21ca2$export$86d53207c3c20049 = \"NoHubcallbackProvidedException\";\n\n});\n\n\nparcelRegister(\"e0exy\", function(module, exports) {\n\n$parcel$export(module.exports, \"AmplifyError\", () => $946cdba1e264a995$export$37321a6dace1881c);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass $946cdba1e264a995$export$37321a6dace1881c extends Error {\n /**\n * Constructs an AmplifyError.\n *\n * @param message text that describes the main problem.\n * @param underlyingError the underlying cause of the error.\n * @param recoverySuggestion suggestion to recover from the error.\n *\n */ constructor({ message: message, name: name, recoverySuggestion: recoverySuggestion, underlyingError: underlyingError }){\n super(message);\n this.name = name;\n this.underlyingError = underlyingError;\n this.recoverySuggestion = recoverySuggestion;\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = $946cdba1e264a995$export$37321a6dace1881c;\n Object.setPrototypeOf(this, $946cdba1e264a995$export$37321a6dace1881c.prototype);\n }\n}\n\n});\n\n\nparcelRegister(\"FIaO4\", function(module, exports) {\n\n$parcel$export(module.exports, \"parseAWSExports\", () => $12e0f7072a5016a7$export$1ef2e9c2da492d);\n\nvar $gJw02 = parcelRequire(\"gJw02\");\n\nvar $e0exy = parcelRequire(\"e0exy\");\n\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $12e0f7072a5016a7$var$logger = new (0, $gJw02.ConsoleLogger)(\"parseAWSExports\");\nconst $12e0f7072a5016a7$var$authTypeMapping = {\n API_KEY: \"apiKey\",\n AWS_IAM: \"iam\",\n AMAZON_COGNITO_USER_POOLS: \"userPool\",\n OPENID_CONNECT: \"oidc\",\n NONE: \"none\",\n AWS_LAMBDA: \"lambda\",\n // `LAMBDA` is an incorrect value that was added during the v6 rewrite.\n // Keeping it as a valid value until v7 to prevent breaking customers who might\n // be relying on it as a workaround.\n // ref: https://github.com/aws-amplify/amplify-js/pull/12922\n // TODO: @v7 remove next line\n LAMBDA: \"lambda\"\n};\n/**\n * Converts the object imported from `aws-exports.js` or `amplifyconfiguration.json` files generated by\n * the Amplify CLI into an object that conforms to the {@link ResourcesConfig}.\n *\n * @param config A configuration object imported from `aws-exports.js` or `amplifyconfiguration.json`.\n *\n * @returns An object that conforms to the {@link ResourcesConfig} .\n */ const $12e0f7072a5016a7$export$1ef2e9c2da492d = (config = {})=>{\n if (!Object.prototype.hasOwnProperty.call(config, \"aws_project_region\")) throw new (0, $e0exy.AmplifyError)({\n name: \"InvalidParameterException\",\n message: \"Invalid config parameter.\",\n recoverySuggestion: \"Ensure passing the config object imported from `amplifyconfiguration.json`.\"\n });\n const { aws_appsync_apiKey: aws_appsync_apiKey, aws_appsync_authenticationType: aws_appsync_authenticationType, aws_appsync_graphqlEndpoint: aws_appsync_graphqlEndpoint, aws_appsync_region: aws_appsync_region, aws_bots_config: aws_bots_config, aws_cognito_identity_pool_id: aws_cognito_identity_pool_id, aws_cognito_sign_up_verification_method: aws_cognito_sign_up_verification_method, aws_cognito_mfa_configuration: aws_cognito_mfa_configuration, aws_cognito_mfa_types: aws_cognito_mfa_types, aws_cognito_password_protection_settings: aws_cognito_password_protection_settings, aws_cognito_verification_mechanisms: aws_cognito_verification_mechanisms, aws_cognito_signup_attributes: aws_cognito_signup_attributes, aws_cognito_social_providers: aws_cognito_social_providers, aws_cognito_username_attributes: aws_cognito_username_attributes, aws_mandatory_sign_in: aws_mandatory_sign_in, aws_mobile_analytics_app_id: aws_mobile_analytics_app_id, aws_mobile_analytics_app_region: aws_mobile_analytics_app_region, aws_user_files_s3_bucket: aws_user_files_s3_bucket, aws_user_files_s3_bucket_region: aws_user_files_s3_bucket_region, aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing: aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing, aws_user_pools_id: aws_user_pools_id, aws_user_pools_web_client_id: aws_user_pools_web_client_id, geo: geo, oauth: oauth, predictions: predictions, aws_cloud_logic_custom: aws_cloud_logic_custom, Notifications: Notifications, modelIntrospection: modelIntrospection } = config;\n const amplifyConfig = {};\n // Analytics\n if (aws_mobile_analytics_app_id) amplifyConfig.Analytics = {\n Pinpoint: {\n appId: aws_mobile_analytics_app_id,\n region: aws_mobile_analytics_app_region\n }\n };\n // Notifications\n const { InAppMessaging: InAppMessaging, Push: Push } = Notifications ?? {};\n if (InAppMessaging?.AWSPinpoint || Push?.AWSPinpoint) {\n if (InAppMessaging?.AWSPinpoint) {\n const { appId: appId, region: region } = InAppMessaging.AWSPinpoint;\n amplifyConfig.Notifications = {\n InAppMessaging: {\n Pinpoint: {\n appId: appId,\n region: region\n }\n }\n };\n }\n if (Push?.AWSPinpoint) {\n const { appId: appId, region: region } = Push.AWSPinpoint;\n amplifyConfig.Notifications = {\n ...amplifyConfig.Notifications,\n PushNotification: {\n Pinpoint: {\n appId: appId,\n region: region\n }\n }\n };\n }\n }\n // Interactions\n if (Array.isArray(aws_bots_config)) amplifyConfig.Interactions = {\n LexV1: Object.fromEntries(aws_bots_config.map((bot)=>[\n bot.name,\n bot\n ]))\n };\n // API\n if (aws_appsync_graphqlEndpoint) {\n const defaultAuthMode = $12e0f7072a5016a7$var$authTypeMapping[aws_appsync_authenticationType];\n if (!defaultAuthMode) $12e0f7072a5016a7$var$logger.debug(`Invalid authentication type ${aws_appsync_authenticationType}. Falling back to IAM.`);\n amplifyConfig.API = {\n GraphQL: {\n endpoint: aws_appsync_graphqlEndpoint,\n apiKey: aws_appsync_apiKey,\n region: aws_appsync_region,\n defaultAuthMode: defaultAuthMode ?? \"iam\"\n }\n };\n if (modelIntrospection) amplifyConfig.API.GraphQL.modelIntrospection = modelIntrospection;\n }\n // Auth\n const mfaConfig = aws_cognito_mfa_configuration ? {\n status: aws_cognito_mfa_configuration && aws_cognito_mfa_configuration.toLowerCase(),\n totpEnabled: aws_cognito_mfa_types?.includes(\"TOTP\") ?? false,\n smsEnabled: aws_cognito_mfa_types?.includes(\"SMS\") ?? false\n } : undefined;\n const passwordFormatConfig = aws_cognito_password_protection_settings ? {\n minLength: aws_cognito_password_protection_settings.passwordPolicyMinLength,\n requireLowercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes(\"REQUIRES_LOWERCASE\") ?? false,\n requireUppercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes(\"REQUIRES_UPPERCASE\") ?? false,\n requireNumbers: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes(\"REQUIRES_NUMBERS\") ?? false,\n requireSpecialCharacters: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes(\"REQUIRES_SYMBOLS\") ?? false\n } : undefined;\n const mergedUserAttributes = Array.from(new Set([\n ...aws_cognito_verification_mechanisms ?? [],\n ...aws_cognito_signup_attributes ?? []\n ]));\n const userAttributes = mergedUserAttributes.reduce((attributes, key)=>({\n ...attributes,\n // All user attributes generated by the CLI are required\n [key.toLowerCase()]: {\n required: true\n }\n }), {});\n const loginWithEmailEnabled = aws_cognito_username_attributes?.includes(\"EMAIL\") ?? false;\n const loginWithPhoneEnabled = aws_cognito_username_attributes?.includes(\"PHONE_NUMBER\") ?? false;\n if (aws_cognito_identity_pool_id || aws_user_pools_id) amplifyConfig.Auth = {\n Cognito: {\n identityPoolId: aws_cognito_identity_pool_id,\n allowGuestAccess: aws_mandatory_sign_in !== \"enable\",\n signUpVerificationMethod: aws_cognito_sign_up_verification_method,\n userAttributes: userAttributes,\n userPoolClientId: aws_user_pools_web_client_id,\n userPoolId: aws_user_pools_id,\n mfa: mfaConfig,\n passwordFormat: passwordFormatConfig,\n loginWith: {\n username: loginWithEmailEnabled || loginWithPhoneEnabled ? false : true,\n email: loginWithEmailEnabled,\n phone: loginWithPhoneEnabled\n }\n }\n };\n const hasOAuthConfig = oauth ? Object.keys(oauth).length > 0 : false;\n const hasSocialProviderConfig = aws_cognito_social_providers ? aws_cognito_social_providers.length > 0 : false;\n if (amplifyConfig.Auth && hasOAuthConfig) amplifyConfig.Auth.Cognito.loginWith = {\n ...amplifyConfig.Auth.Cognito.loginWith,\n oauth: {\n ...$12e0f7072a5016a7$var$getOAuthConfig(oauth),\n ...hasSocialProviderConfig && {\n providers: $12e0f7072a5016a7$var$parseSocialProviders(aws_cognito_social_providers)\n }\n }\n };\n // Storage\n if (aws_user_files_s3_bucket) amplifyConfig.Storage = {\n S3: {\n bucket: aws_user_files_s3_bucket,\n region: aws_user_files_s3_bucket_region,\n dangerouslyConnectToHttpEndpointForTesting: aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing\n }\n };\n // Geo\n if (geo) {\n const { amazon_location_service: amazon_location_service } = geo;\n amplifyConfig.Geo = amazon_location_service ? {\n LocationService: {\n ...amazon_location_service,\n searchIndices: amazon_location_service.search_indices,\n region: amazon_location_service.region\n }\n } : {\n ...geo\n };\n }\n // REST API\n if (aws_cloud_logic_custom) amplifyConfig.API = {\n ...amplifyConfig.API,\n REST: aws_cloud_logic_custom.reduce((acc, api)=>{\n const { name: name, endpoint: endpoint, region: region, service: service } = api;\n return {\n ...acc,\n [name]: {\n endpoint: endpoint,\n ...service ? {\n service: service\n } : undefined,\n ...region ? {\n region: region\n } : undefined\n }\n };\n }, {})\n };\n // Predictions\n if (predictions) {\n // map VoiceId from speechGenerator defaults to voiceId\n const { VoiceId: voiceId } = predictions?.convert?.speechGenerator?.defaults ?? {};\n amplifyConfig.Predictions = voiceId ? {\n ...predictions,\n convert: {\n ...predictions.convert,\n speechGenerator: {\n ...predictions.convert.speechGenerator,\n defaults: {\n voiceId: voiceId\n }\n }\n }\n } : predictions;\n }\n return amplifyConfig;\n};\nconst $12e0f7072a5016a7$var$getRedirectUrl = (redirectStr)=>redirectStr?.split(\",\") ?? [];\nconst $12e0f7072a5016a7$var$getOAuthConfig = ({ domain: domain, scope: scope, redirectSignIn: redirectSignIn, redirectSignOut: redirectSignOut, responseType: responseType })=>({\n domain: domain,\n scopes: scope,\n redirectSignIn: $12e0f7072a5016a7$var$getRedirectUrl(redirectSignIn),\n redirectSignOut: $12e0f7072a5016a7$var$getRedirectUrl(redirectSignOut),\n responseType: responseType\n });\nconst $12e0f7072a5016a7$var$parseSocialProviders = (aws_cognito_social_providers)=>{\n return aws_cognito_social_providers.map((provider)=>{\n const updatedProvider = provider.toLowerCase();\n return updatedProvider.charAt(0).toUpperCase() + updatedProvider.slice(1);\n });\n};\n\n});\n\nparcelRegister(\"iceoz\", function(module, exports) {\n\n$parcel$export(module.exports, \"deepFreeze\", () => $35e949d961a4bb54$export$7e32b29e1cb162e1);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $35e949d961a4bb54$export$7e32b29e1cb162e1 = (object)=>{\n const propNames = Reflect.ownKeys(object);\n for (const name of propNames){\n const value = object[name];\n if (value && typeof value === \"object\" || typeof value === \"function\") $35e949d961a4bb54$export$7e32b29e1cb162e1(value);\n }\n return Object.freeze(object);\n};\n\n});\n\nparcelRegister(\"43O8I\", function(module, exports) {\n\n$parcel$export(module.exports, \"ADD_OAUTH_LISTENER\", () => $3ac22caa9341ca12$export$35210b3191d26437);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $3ac22caa9341ca12$export$35210b3191d26437 = Symbol(\"oauth-listener\");\n\n});\n\n\nparcelRegister(\"lKsZv\", function(module, exports) {\n\n$parcel$export(module.exports, \"CookieStorage\", () => $8a827f16696ff978$export$dae7d845015939d5);\n\nvar $8Nbse = parcelRequire(\"8Nbse\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass $8a827f16696ff978$export$dae7d845015939d5 {\n constructor(data = {}){\n const { path: path, domain: domain, expires: expires, sameSite: sameSite, secure: secure } = data;\n this.domain = domain;\n this.path = path ? path : \"/\";\n this.expires = data.hasOwnProperty(\"expires\") ? expires : 365;\n this.secure = data.hasOwnProperty(\"secure\") ? secure : true;\n if (data.hasOwnProperty(\"sameSite\")) {\n if (!sameSite || ![\n \"strict\",\n \"lax\",\n \"none\"\n ].includes(sameSite)) throw new Error('The sameSite value of cookieStorage must be \"lax\", \"strict\" or \"none\".');\n if (sameSite === \"none\" && !this.secure) throw new Error(\"sameSite = None requires the Secure attribute in latest browser versions.\");\n this.sameSite = sameSite;\n }\n }\n async setItem(key, value) {\n (0, (/*@__PURE__*/$parcel$interopDefault($8Nbse))).set(key, value, this.getData());\n }\n async getItem(key) {\n const item = (0, (/*@__PURE__*/$parcel$interopDefault($8Nbse))).get(key);\n return item ?? null;\n }\n async removeItem(key) {\n (0, (/*@__PURE__*/$parcel$interopDefault($8Nbse))).remove(key, this.getData());\n }\n async clear() {\n const cookie = (0, (/*@__PURE__*/$parcel$interopDefault($8Nbse))).get();\n const promises = Object.keys(cookie).map((key)=>this.removeItem(key));\n await Promise.all(promises);\n }\n getData() {\n return {\n path: this.path,\n expires: this.expires,\n domain: this.domain,\n secure: this.secure,\n ...this.sameSite && {\n sameSite: this.sameSite\n }\n };\n }\n}\n\n});\nparcelRegister(\"8Nbse\", function(module, exports) {\n(function(global, factory) {\n module.exports = factory();\n})(module.exports, function() {\n \"use strict\";\n /* eslint-disable no-var */ function assign(target) {\n for(var i = 1; i < arguments.length; i++){\n var source = arguments[i];\n for(var key in source)target[key] = source[key];\n }\n return target;\n }\n /* eslint-enable no-var */ /* eslint-disable no-var */ var defaultConverter = {\n read: function(value) {\n if (value[0] === '\"') value = value.slice(1, -1);\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent);\n },\n write: function(value) {\n return encodeURIComponent(value).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g, decodeURIComponent);\n }\n };\n /* eslint-enable no-var */ /* eslint-disable no-var */ function init(converter, defaultAttributes) {\n function set(name, value, attributes) {\n if (typeof document === \"undefined\") return;\n attributes = assign({}, defaultAttributes, attributes);\n if (typeof attributes.expires === \"number\") attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n if (attributes.expires) attributes.expires = attributes.expires.toUTCString();\n name = encodeURIComponent(name).replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent).replace(/[()]/g, escape);\n var stringifiedAttributes = \"\";\n for(var attributeName in attributes){\n if (!attributes[attributeName]) continue;\n stringifiedAttributes += \"; \" + attributeName;\n if (attributes[attributeName] === true) continue;\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += \"=\" + attributes[attributeName].split(\";\")[0];\n }\n return document.cookie = name + \"=\" + converter.write(value, name) + stringifiedAttributes;\n }\n function get(name) {\n if (typeof document === \"undefined\" || arguments.length && !name) return;\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split(\"; \") : [];\n var jar = {};\n for(var i = 0; i < cookies.length; i++){\n var parts = cookies[i].split(\"=\");\n var value = parts.slice(1).join(\"=\");\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n if (name === found) break;\n } catch (e) {}\n }\n return name ? jar[name] : jar;\n }\n return Object.create({\n set: set,\n get: get,\n remove: function(name, attributes) {\n set(name, \"\", assign({}, attributes, {\n expires: -1\n }));\n },\n withAttributes: function(attributes) {\n return init(this.converter, assign({}, this.attributes, attributes));\n },\n withConverter: function(converter) {\n return init(assign({}, this.converter, converter), this.attributes);\n }\n }, {\n attributes: {\n value: Object.freeze(defaultAttributes)\n },\n converter: {\n value: Object.freeze(converter)\n }\n });\n }\n var api = init(defaultConverter, {\n path: \"/\"\n });\n /* eslint-enable no-var */ return api;\n});\n\n});\n\n\nparcelRegister(\"57Of0\", function(module, exports) {\n\n$parcel$export(module.exports, \"defaultStorage\", () => $c47f21f216a22ace$export$586b30dcaeecb901);\n\nvar $ejny4 = parcelRequire(\"ejny4\");\n\nvar $g1gqr = parcelRequire(\"g1gqr\");\n\nvar $ceLb3 = parcelRequire(\"ceLb3\");\n\nvar $4EL3H = parcelRequire(\"4EL3H\");\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $c47f21f216a22ace$export$586b30dcaeecb901 = new (0, $ejny4.DefaultStorage)();\nconst $c47f21f216a22ace$export$f119d83aa936d634 = new (0, $4EL3H.SessionStorage)();\nconst $c47f21f216a22ace$export$41feb988b3a84f03 = new (0, $ceLb3.KeyValueStorage)(new (0, $g1gqr.InMemoryStorage)());\n\n});\nparcelRegister(\"ejny4\", function(module, exports) {\n\n$parcel$export(module.exports, \"DefaultStorage\", () => $9f78cbd356024b7e$export$bec45e7703e93690);\n\nvar $ceLb3 = parcelRequire(\"ceLb3\");\n\nvar $5Y39P = parcelRequire(\"5Y39P\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */ class $9f78cbd356024b7e$export$bec45e7703e93690 extends (0, $ceLb3.KeyValueStorage) {\n constructor(){\n super((0, $5Y39P.getLocalStorageWithFallback)());\n }\n}\n\n});\nparcelRegister(\"ceLb3\", function(module, exports) {\n\n$parcel$export(module.exports, \"KeyValueStorage\", () => $0d6aa7e6d5a3429c$export$8536778e426ddf92);\n\nvar $fngA0 = parcelRequire(\"fngA0\");\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */ class $0d6aa7e6d5a3429c$export$8536778e426ddf92 {\n constructor(storage){\n this.storage = storage;\n }\n /**\n * This is used to set a specific item in storage\n * @param {string} key - the key for the item\n * @param {object} value - the value\n * @returns {string} value that was set\n */ async setItem(key, value) {\n if (!this.storage) throw new (0, $fngA0.PlatformNotSupportedError)();\n this.storage.setItem(key, value);\n }\n /**\n * This is used to get a specific key from storage\n * @param {string} key - the key for the item\n * This is used to clear the storage\n * @returns {string} the data item\n */ async getItem(key) {\n if (!this.storage) throw new (0, $fngA0.PlatformNotSupportedError)();\n return this.storage.getItem(key);\n }\n /**\n * This is used to remove an item from storage\n * @param {string} key - the key being set\n * @returns {string} value - value that was deleted\n */ async removeItem(key) {\n if (!this.storage) throw new (0, $fngA0.PlatformNotSupportedError)();\n this.storage.removeItem(key);\n }\n /**\n * This is used to clear the storage\n * @returns {string} nothing\n */ async clear() {\n if (!this.storage) throw new (0, $fngA0.PlatformNotSupportedError)();\n this.storage.clear();\n }\n}\n\n});\nparcelRegister(\"fngA0\", function(module, exports) {\n\n$parcel$export(module.exports, \"PlatformNotSupportedError\", () => $a91ea1244b77fef7$export$f5362e8a6666a455);\n\nvar $8rSHg = parcelRequire(\"8rSHg\");\n\nvar $e0exy = parcelRequire(\"e0exy\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass $a91ea1244b77fef7$export$f5362e8a6666a455 extends (0, $e0exy.AmplifyError) {\n constructor(){\n super({\n name: (0, $8rSHg.AmplifyErrorCode).PlatformNotSupported,\n message: \"Function not supported on current platform\"\n });\n }\n}\n\n});\nparcelRegister(\"8rSHg\", function(module, exports) {\n\n$parcel$export(module.exports, \"AmplifyErrorCode\", () => $032079a569aa4e0d$export$4e712df6b850c8d0);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar $032079a569aa4e0d$export$4e712df6b850c8d0;\n(function(AmplifyErrorCode) {\n AmplifyErrorCode[\"NoEndpointId\"] = \"NoEndpointId\";\n AmplifyErrorCode[\"PlatformNotSupported\"] = \"PlatformNotSupported\";\n AmplifyErrorCode[\"Unknown\"] = \"Unknown\";\n})($032079a569aa4e0d$export$4e712df6b850c8d0 || ($032079a569aa4e0d$export$4e712df6b850c8d0 = {}));\n\n});\n\n\n\nparcelRegister(\"5Y39P\", function(module, exports) {\n\n$parcel$export(module.exports, \"getLocalStorageWithFallback\", () => $a932b92f8e337975$export$5d9abaf8ff62cd65);\n$parcel$export(module.exports, \"getSessionStorageWithFallback\", () => $a932b92f8e337975$export$518dcc1598f87b);\n\nvar $g1gqr = parcelRequire(\"g1gqr\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n * @returns Either a reference to window.localStorage or an in-memory storage as fallback\n */ const $a932b92f8e337975$export$5d9abaf8ff62cd65 = ()=>typeof window !== \"undefined\" && window.localStorage ? window.localStorage : new (0, $g1gqr.InMemoryStorage)();\n/**\n * @internal\n * @returns Either a reference to window.sessionStorage or an in-memory storage as fallback\n */ const $a932b92f8e337975$export$518dcc1598f87b = ()=>typeof window !== \"undefined\" && window.sessionStorage ? window.sessionStorage : new (0, $g1gqr.InMemoryStorage)();\n\n});\nparcelRegister(\"g1gqr\", function(module, exports) {\n\n$parcel$export(module.exports, \"InMemoryStorage\", () => $2875d3cc5c2dfbf0$export$e4315e25b840a0ea);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */ class $2875d3cc5c2dfbf0$export$e4315e25b840a0ea {\n constructor(){\n this.storage = new Map();\n }\n get length() {\n return this.storage.size;\n }\n key(index) {\n if (index > this.length - 1) return null;\n return Array.from(this.storage.keys())[index];\n }\n setItem(key, value) {\n this.storage.set(key, value);\n }\n getItem(key) {\n return this.storage.get(key) ?? null;\n }\n removeItem(key) {\n this.storage.delete(key);\n }\n clear() {\n this.storage.clear();\n }\n}\n\n});\n\n\n\nparcelRegister(\"4EL3H\", function(module, exports) {\n\n$parcel$export(module.exports, \"SessionStorage\", () => $a3c2eb980ed98e6f$export$2c4b17e1c2e0931);\n\nvar $ceLb3 = parcelRequire(\"ceLb3\");\n\nvar $5Y39P = parcelRequire(\"5Y39P\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */ class $a3c2eb980ed98e6f$export$2c4b17e1c2e0931 extends (0, $ceLb3.KeyValueStorage) {\n constructor(){\n super((0, $5Y39P.getSessionStorageWithFallback)());\n }\n}\n\n});\n\n\nparcelRegister(\"e2NQk\", function(module, exports) {\n\n$parcel$export(module.exports, \"cognitoCredentialsProvider\", () => $58a834a1218aacfd$export$be43b753aec531e2);\n\nvar $2vm2m = parcelRequire(\"2vm2m\");\n\nvar $5rVdp = parcelRequire(\"5rVdp\");\n\nvar $57Of0 = parcelRequire(\"57Of0\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Cognito specific implmentation of the CredentialsProvider interface\n * that manages setting and getting of AWS Credentials.\n *\n * @throws configuration expections: {@link InvalidIdentityPoolIdException }\n * - Auth errors that may arise from misconfiguration.\n * @throws service expections: {@link GetCredentialsForIdentityException}, {@link GetIdException}\n *\n */ const $58a834a1218aacfd$export$be43b753aec531e2 = new (0, $5rVdp.CognitoAWSCredentialsAndIdentityIdProvider)(new (0, $2vm2m.DefaultIdentityIdStore)((0, $57Of0.defaultStorage)));\n\n});\nparcelRegister(\"2vm2m\", function(module, exports) {\n\n$parcel$export(module.exports, \"DefaultIdentityIdStore\", () => $9f93ccdc5f95c7af$export$3e97b78667a539a0);\n\nvar $gJw02 = parcelRequire(\"gJw02\");\n\nvar $bfiP6 = parcelRequire(\"bfiP6\");\n\nvar $88z72 = parcelRequire(\"88z72\");\n\nvar $029ov = parcelRequire(\"029ov\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $9f93ccdc5f95c7af$var$logger = new (0, $gJw02.ConsoleLogger)(\"DefaultIdentityIdStore\");\nclass $9f93ccdc5f95c7af$export$3e97b78667a539a0 {\n setAuthConfig(authConfigParam) {\n (0, $bfiP6.assertIdentityPoolIdConfig)(authConfigParam.Cognito);\n this.authConfig = authConfigParam;\n this._authKeys = $9f93ccdc5f95c7af$var$createKeysForAuthStorage(\"Cognito\", authConfigParam.Cognito.identityPoolId);\n return;\n }\n constructor(keyValueStorage){\n this._authKeys = {};\n this.keyValueStorage = keyValueStorage;\n }\n async loadIdentityId() {\n (0, $bfiP6.assertIdentityPoolIdConfig)(this.authConfig?.Cognito);\n try {\n if (!!this._primaryIdentityId) return {\n id: this._primaryIdentityId,\n type: \"primary\"\n };\n else {\n const storedIdentityId = await this.keyValueStorage.getItem(this._authKeys.identityId);\n if (!!storedIdentityId) return {\n id: storedIdentityId,\n type: \"guest\"\n };\n return null;\n }\n } catch (err) {\n $9f93ccdc5f95c7af$var$logger.log(\"Error getting stored IdentityId.\", err);\n return null;\n }\n }\n async storeIdentityId(identity) {\n (0, $bfiP6.assertIdentityPoolIdConfig)(this.authConfig?.Cognito);\n if (identity.type === \"guest\") {\n this.keyValueStorage.setItem(this._authKeys.identityId, identity.id);\n // Clear in-memory storage of primary identityId\n this._primaryIdentityId = undefined;\n } else {\n this._primaryIdentityId = identity.id;\n // Clear locally stored guest id\n this.keyValueStorage.removeItem(this._authKeys.identityId);\n }\n }\n async clearIdentityId() {\n this._primaryIdentityId = undefined;\n await this.keyValueStorage.removeItem(this._authKeys.identityId);\n }\n}\nconst $9f93ccdc5f95c7af$var$createKeysForAuthStorage = (provider, identifier)=>{\n return (0, $029ov.getAuthStorageKeys)((0, $88z72.IdentityIdStorageKeys))(`com.amplify.${provider}`, identifier);\n};\n\n});\nparcelRegister(\"bfiP6\", function(module, exports) {\n\n$parcel$export(module.exports, \"assertTokenProviderConfig\", () => $47b41f0bc3dcf730$export$80c92581e59ed502);\n$parcel$export(module.exports, \"assertOAuthConfig\", () => $47b41f0bc3dcf730$export$c13e6dbaf90a8e5f);\n$parcel$export(module.exports, \"assertIdentityPoolIdConfig\", () => $47b41f0bc3dcf730$export$8a2f5318ea3215e3);\n$parcel$export(module.exports, \"decodeJWT\", () => $47b41f0bc3dcf730$export$9a62e6c0a30e00bc);\n\nvar $cYnY3 = parcelRequire(\"cYnY3\");\n\nvar $iLExi = parcelRequire(\"iLExi\");\n\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $47b41f0bc3dcf730$export$80c92581e59ed502(cognitoConfig) {\n let assertionValid = true; // assume valid until otherwise proveed\n if (!cognitoConfig) assertionValid = false;\n else assertionValid = !!cognitoConfig.userPoolId && !!cognitoConfig.userPoolClientId;\n return (0, $cYnY3.assert)(assertionValid, (0, $cYnY3.AuthConfigurationErrorCode).AuthUserPoolException);\n}\nfunction $47b41f0bc3dcf730$export$c13e6dbaf90a8e5f(cognitoConfig) {\n const validOAuthConfig = !!cognitoConfig?.loginWith?.oauth?.domain && !!cognitoConfig?.loginWith?.oauth?.redirectSignOut && !!cognitoConfig?.loginWith?.oauth?.redirectSignIn && !!cognitoConfig?.loginWith?.oauth?.responseType;\n return (0, $cYnY3.assert)(validOAuthConfig, (0, $cYnY3.AuthConfigurationErrorCode).OAuthNotConfigureException);\n}\nfunction $47b41f0bc3dcf730$export$8a2f5318ea3215e3(cognitoConfig) {\n const validConfig = !!cognitoConfig?.identityPoolId;\n return (0, $cYnY3.assert)(validConfig, (0, $cYnY3.AuthConfigurationErrorCode).InvalidIdentityPoolIdException);\n}\nfunction $47b41f0bc3dcf730$export$9a62e6c0a30e00bc(token) {\n const tokenParts = token.split(\".\");\n if (tokenParts.length !== 3) throw new Error(\"Invalid token\");\n try {\n const base64WithUrlSafe = tokenParts[1];\n const base64 = base64WithUrlSafe.replace(/-/g, \"+\").replace(/_/g, \"/\");\n const jsonStr = decodeURIComponent((0, $iLExi.base64Decoder).convert(base64).split(\"\").map((char)=>`%${`00${char.charCodeAt(0).toString(16)}`.slice(-2)}`).join(\"\"));\n const payload = JSON.parse(jsonStr);\n return {\n toString: ()=>token,\n payload: payload\n };\n } catch (err) {\n throw new Error(\"Invalid token payload\");\n }\n}\n\n});\nparcelRegister(\"cYnY3\", function(module, exports) {\n\n$parcel$export(module.exports, \"AuthConfigurationErrorCode\", () => $c43ab8490e8ade2c$export$7b5c8b570ea8407);\n$parcel$export(module.exports, \"assert\", () => $c43ab8490e8ade2c$export$a7a9523472993e97);\n\nvar $bggJy = parcelRequire(\"bggJy\");\n\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar $c43ab8490e8ade2c$export$7b5c8b570ea8407;\n(function(AuthConfigurationErrorCode) {\n AuthConfigurationErrorCode[\"AuthTokenConfigException\"] = \"AuthTokenConfigException\";\n AuthConfigurationErrorCode[\"AuthUserPoolAndIdentityPoolException\"] = \"AuthUserPoolAndIdentityPoolException\";\n AuthConfigurationErrorCode[\"AuthUserPoolException\"] = \"AuthUserPoolException\";\n AuthConfigurationErrorCode[\"InvalidIdentityPoolIdException\"] = \"InvalidIdentityPoolIdException\";\n AuthConfigurationErrorCode[\"OAuthNotConfigureException\"] = \"OAuthNotConfigureException\";\n})($c43ab8490e8ade2c$export$7b5c8b570ea8407 || ($c43ab8490e8ade2c$export$7b5c8b570ea8407 = {}));\nconst $c43ab8490e8ade2c$var$authConfigurationErrorMap = {\n [$c43ab8490e8ade2c$export$7b5c8b570ea8407.AuthTokenConfigException]: {\n message: \"Auth Token Provider not configured.\",\n recoverySuggestion: \"Make sure to call Amplify.configure in your app.\"\n },\n [$c43ab8490e8ade2c$export$7b5c8b570ea8407.AuthUserPoolAndIdentityPoolException]: {\n message: \"Auth UserPool or IdentityPool not configured.\",\n recoverySuggestion: \"Make sure to call Amplify.configure in your app with UserPoolId and IdentityPoolId.\"\n },\n [$c43ab8490e8ade2c$export$7b5c8b570ea8407.AuthUserPoolException]: {\n message: \"Auth UserPool not configured.\",\n recoverySuggestion: \"Make sure to call Amplify.configure in your app with userPoolId and userPoolClientId.\"\n },\n [$c43ab8490e8ade2c$export$7b5c8b570ea8407.InvalidIdentityPoolIdException]: {\n message: \"Invalid identity pool id provided.\",\n recoverySuggestion: \"Make sure a valid identityPoolId is given in the config.\"\n },\n [$c43ab8490e8ade2c$export$7b5c8b570ea8407.OAuthNotConfigureException]: {\n message: \"oauth param not configured.\",\n recoverySuggestion: \"Make sure to call Amplify.configure with oauth parameter in your app.\"\n }\n};\nconst $c43ab8490e8ade2c$export$a7a9523472993e97 = (0, $bggJy.createAssertionFunction)($c43ab8490e8ade2c$var$authConfigurationErrorMap);\n\n});\nparcelRegister(\"bggJy\", function(module, exports) {\n\n$parcel$export(module.exports, \"createAssertionFunction\", () => $0d1a22fb669c23b6$export$5cb8fc27ccbe9d40);\n\nvar $e0exy = parcelRequire(\"e0exy\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $0d1a22fb669c23b6$export$5cb8fc27ccbe9d40 = (errorMap, AssertionError = (0, $e0exy.AmplifyError))=>(assertion, name, additionalContext)=>{\n const { message: message, recoverySuggestion: recoverySuggestion } = errorMap[name];\n if (!assertion) throw new AssertionError({\n name: name,\n message: additionalContext ? `${message} ${additionalContext}` : message,\n recoverySuggestion: recoverySuggestion\n });\n };\n\n});\n\n\nparcelRegister(\"iLExi\", function(module, exports) {\n\n$parcel$export(module.exports, \"base64Decoder\", () => $0a6173e3df3e7293$export$1e303d38dab7b376);\n\nvar $dfMUF = parcelRequire(\"dfMUF\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $0a6173e3df3e7293$export$1e303d38dab7b376 = {\n convert (input) {\n return (0, $dfMUF.getAtob)()(input);\n }\n};\n\n});\nparcelRegister(\"dfMUF\", function(module, exports) {\n\n$parcel$export(module.exports, \"getCrypto\", () => $6f3b4030fc0f3ef5$export$e003cc239f955cb6);\n$parcel$export(module.exports, \"getBtoa\", () => $6f3b4030fc0f3ef5$export$94f295707b435c6d);\n$parcel$export(module.exports, \"getAtob\", () => $6f3b4030fc0f3ef5$export$ea737e7700106b27);\n\nvar $e0exy = parcelRequire(\"e0exy\");\n\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $6f3b4030fc0f3ef5$export$e003cc239f955cb6 = ()=>{\n if (typeof window === \"object\" && typeof window.crypto === \"object\") return window.crypto;\n // Next.js global polyfill\n if (typeof crypto === \"object\") return crypto;\n throw new (0, $e0exy.AmplifyError)({\n name: \"MissingPolyfill\",\n message: \"Cannot resolve the `crypto` function from the environment.\"\n });\n};\nconst $6f3b4030fc0f3ef5$export$94f295707b435c6d = ()=>{\n // browser\n if (typeof window !== \"undefined\" && typeof window.btoa === \"function\") return window.btoa;\n // Next.js global polyfill\n if (typeof btoa === \"function\") return btoa;\n throw new (0, $e0exy.AmplifyError)({\n name: \"Base64EncoderError\",\n message: \"Cannot resolve the `btoa` function from the environment.\"\n });\n};\nconst $6f3b4030fc0f3ef5$export$ea737e7700106b27 = ()=>{\n // browser\n if (typeof window !== \"undefined\" && typeof window.atob === \"function\") return window.atob;\n // Next.js global polyfill\n if (typeof atob === \"function\") return atob;\n throw new (0, $e0exy.AmplifyError)({\n name: \"Base64EncoderError\",\n message: \"Cannot resolve the `atob` function from the environment.\"\n });\n};\n\n});\n\n\n\nparcelRegister(\"88z72\", function(module, exports) {\n\n$parcel$export(module.exports, \"IdentityIdStorageKeys\", () => $c1ea576318e91128$export$dad1700b96c3a835);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $c1ea576318e91128$export$dad1700b96c3a835 = {\n identityId: \"identityId\"\n};\n\n});\n\nparcelRegister(\"029ov\", function(module, exports) {\n\n$parcel$export(module.exports, \"DefaultTokenStore\", () => $bfc286311b85b781$export$a36be852d43d512);\n$parcel$export(module.exports, \"getAuthStorageKeys\", () => $bfc286311b85b781$export$dfb8da757ca62eed);\n\nvar $bfiP6 = parcelRequire(\"bfiP6\");\n\nvar $3O5pD = parcelRequire(\"3O5pD\");\n\nvar $b62N7 = parcelRequire(\"b62N7\");\n\nvar $dvCiI = parcelRequire(\"dvCiI\");\nclass $bfc286311b85b781$export$a36be852d43d512 {\n constructor(){\n this.name = \"CognitoIdentityServiceProvider\"; // To be backwards compatible with V5, no migration needed\n }\n getKeyValueStorage() {\n if (!this.keyValueStorage) throw new (0, $b62N7.AuthError)({\n name: \"KeyValueStorageNotFoundException\",\n message: \"KeyValueStorage was not found in TokenStore\"\n });\n return this.keyValueStorage;\n }\n setKeyValueStorage(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n async loadTokens() {\n // TODO(v6): migration logic should be here\n // Reading V5 tokens old format\n try {\n const authKeys = await this.getAuthKeys();\n const accessTokenString = await this.getKeyValueStorage().getItem(authKeys.accessToken);\n if (!accessTokenString) throw new (0, $b62N7.AuthError)({\n name: \"NoSessionFoundException\",\n message: \"Auth session was not found. Make sure to call signIn.\"\n });\n const accessToken = (0, $bfiP6.decodeJWT)(accessTokenString);\n const itString = await this.getKeyValueStorage().getItem(authKeys.idToken);\n const idToken = itString ? (0, $bfiP6.decodeJWT)(itString) : undefined;\n const refreshToken = await this.getKeyValueStorage().getItem(authKeys.refreshToken) ?? undefined;\n const clockDriftString = await this.getKeyValueStorage().getItem(authKeys.clockDrift) ?? \"0\";\n const clockDrift = Number.parseInt(clockDriftString);\n const signInDetails = await this.getKeyValueStorage().getItem(authKeys.signInDetails);\n const tokens = {\n accessToken: accessToken,\n idToken: idToken,\n refreshToken: refreshToken,\n deviceMetadata: await this.getDeviceMetadata() ?? undefined,\n clockDrift: clockDrift,\n username: await this.getLastAuthUser()\n };\n if (signInDetails) tokens.signInDetails = JSON.parse(signInDetails);\n return tokens;\n } catch (err) {\n return null;\n }\n }\n async storeTokens(tokens) {\n (0, $dvCiI.assert)(tokens !== undefined, (0, $dvCiI.TokenProviderErrorCode).InvalidAuthTokens);\n await this.clearTokens();\n const lastAuthUser = tokens.username;\n await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);\n const authKeys = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(authKeys.accessToken, tokens.accessToken.toString());\n if (!!tokens.idToken) await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());\n if (!!tokens.refreshToken) await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);\n if (!!tokens.deviceMetadata) {\n if (tokens.deviceMetadata.deviceKey) await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);\n if (tokens.deviceMetadata.deviceGroupKey) await this.getKeyValueStorage().setItem(authKeys.deviceGroupKey, tokens.deviceMetadata.deviceGroupKey);\n await this.getKeyValueStorage().setItem(authKeys.randomPasswordKey, tokens.deviceMetadata.randomPassword);\n }\n if (!!tokens.signInDetails) await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));\n await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);\n }\n async clearTokens() {\n const authKeys = await this.getAuthKeys();\n // Not calling clear because it can remove data that is not managed by AuthTokenStore\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.accessToken),\n this.getKeyValueStorage().removeItem(authKeys.idToken),\n this.getKeyValueStorage().removeItem(authKeys.clockDrift),\n this.getKeyValueStorage().removeItem(authKeys.refreshToken),\n this.getKeyValueStorage().removeItem(authKeys.signInDetails),\n this.getKeyValueStorage().removeItem(this.getLastAuthUserKey())\n ]);\n }\n async getDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n const deviceKey = await this.getKeyValueStorage().getItem(authKeys.deviceKey);\n const deviceGroupKey = await this.getKeyValueStorage().getItem(authKeys.deviceGroupKey);\n const randomPassword = await this.getKeyValueStorage().getItem(authKeys.randomPasswordKey);\n return !!randomPassword ? {\n deviceKey: deviceKey ?? undefined,\n deviceGroupKey: deviceGroupKey ?? undefined,\n randomPassword: randomPassword\n } : null;\n }\n async clearDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.deviceKey),\n this.getKeyValueStorage().removeItem(authKeys.deviceGroupKey),\n this.getKeyValueStorage().removeItem(authKeys.randomPasswordKey)\n ]);\n }\n async getAuthKeys(username) {\n (0, $bfiP6.assertTokenProviderConfig)(this.authConfig?.Cognito);\n const lastAuthUser = username ?? await this.getLastAuthUser();\n return $bfc286311b85b781$export$4647c72f6828a74d(this.name, `${this.authConfig.Cognito.userPoolClientId}.${lastAuthUser}`);\n }\n getLastAuthUserKey() {\n (0, $bfiP6.assertTokenProviderConfig)(this.authConfig?.Cognito);\n const identifier = this.authConfig.Cognito.userPoolClientId;\n return `${this.name}.${identifier}.LastAuthUser`;\n }\n async getLastAuthUser() {\n const lastAuthUser = await this.getKeyValueStorage().getItem(this.getLastAuthUserKey()) ?? \"username\";\n return lastAuthUser;\n }\n}\nconst $bfc286311b85b781$export$4647c72f6828a74d = (provider, identifier)=>{\n return $bfc286311b85b781$export$dfb8da757ca62eed((0, $3O5pD.AuthTokenStorageKeys))(`${provider}`, identifier);\n};\nfunction $bfc286311b85b781$export$dfb8da757ca62eed(authKeys) {\n const keys = Object.values({\n ...authKeys\n });\n return (prefix, identifier)=>keys.reduce((acc, authKey)=>({\n ...acc,\n [authKey]: `${prefix}.${identifier}.${authKey}`\n }), {});\n}\n\n});\nparcelRegister(\"3O5pD\", function(module, exports) {\n\n$parcel$export(module.exports, \"AuthTokenStorageKeys\", () => $338fa29dda4a9a9e$export$b8429d1428aad8ba);\nconst $338fa29dda4a9a9e$export$b8429d1428aad8ba = {\n accessToken: \"accessToken\",\n idToken: \"idToken\",\n oidcProvider: \"oidcProvider\",\n clockDrift: \"clockDrift\",\n refreshToken: \"refreshToken\",\n deviceKey: \"deviceKey\",\n randomPasswordKey: \"randomPasswordKey\",\n deviceGroupKey: \"deviceGroupKey\",\n signInDetails: \"signInDetails\"\n};\n\n});\n\nparcelRegister(\"b62N7\", function(module, exports) {\n\n$parcel$export(module.exports, \"AuthError\", () => $0bd2271901d3ce8f$export$145273558d58e0ac);\n\nvar $e0exy = parcelRequire(\"e0exy\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass $0bd2271901d3ce8f$export$145273558d58e0ac extends (0, $e0exy.AmplifyError) {\n constructor(params){\n super(params);\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = $0bd2271901d3ce8f$export$145273558d58e0ac;\n Object.setPrototypeOf(this, $0bd2271901d3ce8f$export$145273558d58e0ac.prototype);\n }\n}\n\n});\n\nparcelRegister(\"dvCiI\", function(module, exports) {\n\n$parcel$export(module.exports, \"TokenProviderErrorCode\", () => $40486dcb7c4675e2$export$cc5909720f29144);\n$parcel$export(module.exports, \"assert\", () => $40486dcb7c4675e2$export$a7a9523472993e97);\n\nvar $bggJy = parcelRequire(\"bggJy\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar $40486dcb7c4675e2$export$cc5909720f29144;\n(function(TokenProviderErrorCode) {\n TokenProviderErrorCode[\"InvalidAuthTokens\"] = \"InvalidAuthTokens\";\n})($40486dcb7c4675e2$export$cc5909720f29144 || ($40486dcb7c4675e2$export$cc5909720f29144 = {}));\nconst $40486dcb7c4675e2$var$tokenValidationErrorMap = {\n [$40486dcb7c4675e2$export$cc5909720f29144.InvalidAuthTokens]: {\n message: \"Invalid tokens.\",\n recoverySuggestion: \"Make sure the tokens are valid.\"\n }\n};\nconst $40486dcb7c4675e2$export$a7a9523472993e97 = (0, $bggJy.createAssertionFunction)($40486dcb7c4675e2$var$tokenValidationErrorMap);\n\n});\n\n\n\nparcelRegister(\"5rVdp\", function(module, exports) {\n\n$parcel$export(module.exports, \"CognitoAWSCredentialsAndIdentityIdProvider\", () => $1b1ef4a1e101da96$export$be6550e37264dc26);\n\nvar $4a2RL = parcelRequire(\"4a2RL\");\n\nvar $gJw02 = parcelRequire(\"gJw02\");\nvar $avjBi = parcelRequire(\"avjBi\");\n\nvar $bfiP6 = parcelRequire(\"bfiP6\");\n\nvar $b62N7 = parcelRequire(\"b62N7\");\n\nvar $4P578 = parcelRequire(\"4P578\");\n\nvar $kOfpC = parcelRequire(\"kOfpC\");\n\nvar $inqgD = parcelRequire(\"inqgD\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $1b1ef4a1e101da96$var$logger = new (0, $gJw02.ConsoleLogger)(\"CognitoCredentialsProvider\");\nconst $1b1ef4a1e101da96$var$CREDENTIALS_TTL = 3000000; // 50 min, can be modified on config if required in the future\nclass $1b1ef4a1e101da96$export$be6550e37264dc26 {\n constructor(identityIdStore){\n this._nextCredentialsRefresh = 0;\n this._identityIdStore = identityIdStore;\n }\n async clearCredentialsAndIdentityId() {\n $1b1ef4a1e101da96$var$logger.debug(\"Clearing out credentials and identityId\");\n this._credentialsAndIdentityId = undefined;\n await this._identityIdStore.clearIdentityId();\n }\n async clearCredentials() {\n $1b1ef4a1e101da96$var$logger.debug(\"Clearing out in-memory credentials\");\n this._credentialsAndIdentityId = undefined;\n }\n async getCredentialsAndIdentityId(getCredentialsOptions) {\n const isAuthenticated = getCredentialsOptions.authenticated;\n const tokens = getCredentialsOptions.tokens;\n const authConfig = getCredentialsOptions.authConfig;\n try {\n (0, $bfiP6.assertIdentityPoolIdConfig)(authConfig?.Cognito);\n } catch {\n // No identity pool configured, skipping\n return;\n }\n if (!isAuthenticated && !authConfig.Cognito.allowGuestAccess) // TODO(V6): return partial result like Native platforms\n return;\n const forceRefresh = getCredentialsOptions.forceRefresh;\n const tokenHasChanged = this.hasTokenChanged(tokens);\n const identityId = await (0, $4a2RL.cognitoIdentityIdProvider)({\n tokens: tokens,\n authConfig: authConfig.Cognito,\n identityIdStore: this._identityIdStore\n });\n // Clear cached credentials when forceRefresh is true OR the cache token has changed\n if (forceRefresh || tokenHasChanged) this.clearCredentials();\n if (!isAuthenticated) return this.getGuestCredentials(identityId, authConfig.Cognito);\n else {\n (0, $kOfpC.assertIdTokenInAuthTokens)(tokens);\n return this.credsForOIDCTokens(authConfig.Cognito, tokens, identityId);\n }\n }\n async getGuestCredentials(identityId, authConfig) {\n // Return existing in-memory cached credentials only if it exists, is not past it's lifetime and is unauthenticated credentials\n if (this._credentialsAndIdentityId && !this.isPastTTL() && this._credentialsAndIdentityId.isAuthenticatedCreds === false) {\n $1b1ef4a1e101da96$var$logger.info(\"returning stored credentials as they neither past TTL nor expired.\");\n return this._credentialsAndIdentityId;\n }\n // Clear to discard if any authenticated credentials are set and start with a clean slate\n this.clearCredentials();\n const region = (0, $4P578.getRegionFromIdentityPoolId)(authConfig.identityPoolId);\n // use identityId to obtain guest credentials\n // save credentials in-memory\n // No logins params should be passed for guest creds:\n // https://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetCredentialsForIdentity.html\n const clientResult = await (0, $avjBi.getCredentialsForIdentity)({\n region: region\n }, {\n IdentityId: identityId\n });\n if (clientResult.Credentials && clientResult.Credentials.AccessKeyId && clientResult.Credentials.SecretKey) {\n this._nextCredentialsRefresh = new Date().getTime() + $1b1ef4a1e101da96$var$CREDENTIALS_TTL;\n const res = {\n credentials: {\n accessKeyId: clientResult.Credentials.AccessKeyId,\n secretAccessKey: clientResult.Credentials.SecretKey,\n sessionToken: clientResult.Credentials.SessionToken,\n expiration: clientResult.Credentials.Expiration\n },\n identityId: identityId\n };\n const identityIdRes = clientResult.IdentityId;\n if (identityIdRes) {\n res.identityId = identityIdRes;\n this._identityIdStore.storeIdentityId({\n id: identityIdRes,\n type: \"guest\"\n });\n }\n this._credentialsAndIdentityId = {\n ...res,\n isAuthenticatedCreds: false\n };\n return res;\n } else throw new (0, $b62N7.AuthError)({\n name: \"CredentialsNotFoundException\",\n message: `Cognito did not respond with either Credentials, AccessKeyId or SecretKey.`\n });\n }\n async credsForOIDCTokens(authConfig, authTokens, identityId) {\n if (this._credentialsAndIdentityId && !this.isPastTTL() && this._credentialsAndIdentityId.isAuthenticatedCreds === true) {\n $1b1ef4a1e101da96$var$logger.debug(\"returning stored credentials as they neither past TTL nor expired.\");\n return this._credentialsAndIdentityId;\n }\n // Clear to discard if any unauthenticated credentials are set and start with a clean slate\n this.clearCredentials();\n const logins = authTokens.idToken ? (0, $inqgD.formLoginsMap)(authTokens.idToken.toString()) : {};\n const region = (0, $4P578.getRegionFromIdentityPoolId)(authConfig.identityPoolId);\n const clientResult = await (0, $avjBi.getCredentialsForIdentity)({\n region: region\n }, {\n IdentityId: identityId,\n Logins: logins\n });\n if (clientResult.Credentials && clientResult.Credentials.AccessKeyId && clientResult.Credentials.SecretKey) {\n const res = {\n credentials: {\n accessKeyId: clientResult.Credentials.AccessKeyId,\n secretAccessKey: clientResult.Credentials.SecretKey,\n sessionToken: clientResult.Credentials.SessionToken,\n expiration: clientResult.Credentials.Expiration\n },\n identityId: identityId\n };\n // Store the credentials in-memory along with the expiration\n this._credentialsAndIdentityId = {\n ...res,\n isAuthenticatedCreds: true,\n associatedIdToken: authTokens.idToken?.toString()\n };\n this._nextCredentialsRefresh = new Date().getTime() + $1b1ef4a1e101da96$var$CREDENTIALS_TTL;\n const identityIdRes = clientResult.IdentityId;\n if (identityIdRes) {\n res.identityId = identityIdRes;\n this._identityIdStore.storeIdentityId({\n id: identityIdRes,\n type: \"primary\"\n });\n }\n return res;\n } else throw new (0, $b62N7.AuthError)({\n name: \"CredentialsException\",\n message: `Cognito did not respond with either Credentials, AccessKeyId or SecretKey.`\n });\n }\n isPastTTL() {\n return this._nextCredentialsRefresh === undefined ? true : this._nextCredentialsRefresh <= Date.now();\n }\n hasTokenChanged(tokens) {\n return !!tokens && !!this._credentialsAndIdentityId?.associatedIdToken && tokens.idToken?.toString() !== this._credentialsAndIdentityId.associatedIdToken;\n }\n}\n\n});\nparcelRegister(\"4a2RL\", function(module, exports) {\n\n$parcel$export(module.exports, \"cognitoIdentityIdProvider\", () => $afb7bce2c184eee7$export$7c3e576630d5e301);\n\nvar $gJw02 = parcelRequire(\"gJw02\");\nvar $0D2gL = parcelRequire(\"0D2gL\");\n\nvar $b62N7 = parcelRequire(\"b62N7\");\n\nvar $4P578 = parcelRequire(\"4P578\");\n\nvar $inqgD = parcelRequire(\"inqgD\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $afb7bce2c184eee7$var$logger = new (0, $gJw02.ConsoleLogger)(\"CognitoIdentityIdProvider\");\n/**\n * Provides a Cognito identityId\n *\n * @param tokens - The AuthTokens received after SignIn\n * @returns string\n * @throws configuration excpetions: {@link InvalidIdentityPoolIdException }\n * - Auth errors that may arise from misconfiguration.\n * @throws service excpetions: {@link GetIdException }\n */ async function $afb7bce2c184eee7$export$7c3e576630d5e301({ tokens: tokens, authConfig: authConfig, identityIdStore: identityIdStore }) {\n identityIdStore.setAuthConfig({\n Cognito: authConfig\n });\n // will return null only if there is no identityId cached or if there is an error retrieving it\n let identityId = await identityIdStore.loadIdentityId();\n // Tokens are available so return primary identityId\n if (tokens) {\n // If there is existing primary identityId in-memory return that\n if (identityId && identityId.type === \"primary\") return identityId.id;\n else {\n const logins = tokens.idToken ? (0, $inqgD.formLoginsMap)(tokens.idToken.toString()) : {};\n const generatedIdentityId = await $afb7bce2c184eee7$var$generateIdentityId(logins, authConfig);\n if (identityId && identityId.id === generatedIdentityId) $afb7bce2c184eee7$var$logger.debug(`The guest identity ${identityId.id} has become the primary identity.`);\n identityId = {\n id: generatedIdentityId,\n type: \"primary\"\n };\n }\n } else {\n // If there is existing guest identityId cached return that\n if (identityId && identityId.type === \"guest\") return identityId.id;\n else identityId = {\n id: await $afb7bce2c184eee7$var$generateIdentityId({}, authConfig),\n type: \"guest\"\n };\n }\n // Store in-memory or local storage depending on guest or primary identityId\n identityIdStore.storeIdentityId(identityId);\n return identityId.id;\n}\nasync function $afb7bce2c184eee7$var$generateIdentityId(logins, authConfig) {\n const identityPoolId = authConfig?.identityPoolId;\n const region = (0, $4P578.getRegionFromIdentityPoolId)(identityPoolId);\n // IdentityId is absent so get it using IdentityPoolId with Cognito's GetId API\n const idResult = // for a first-time user, this will return a brand new identity\n // for a returning user, this will retrieve the previous identity assocaited with the logins\n (await (0, $0D2gL.getId)({\n region: region\n }, {\n IdentityPoolId: identityPoolId,\n Logins: logins\n })).IdentityId;\n if (!idResult) throw new (0, $b62N7.AuthError)({\n name: \"GetIdResponseException\",\n message: \"Received undefined response from getId operation\",\n recoverySuggestion: \"Make sure to pass a valid identityPoolId in the configuration.\"\n });\n return idResult;\n}\n\n});\nparcelRegister(\"0D2gL\", function(module, exports) {\n\n$parcel$export(module.exports, \"getId\", () => $0a5974c6b22efc6b$export$218c8c3169c024d2);\n\nvar $lL7zI = parcelRequire(\"lL7zI\");\n\n\nparcelRequire(\"78v1Z\");\nparcelRequire(\"lUOK3\");\n\nvar $7ecIZ = parcelRequire(\"7ecIZ\");\n\nvar $bM38a = parcelRequire(\"bM38a\");\n\nvar $6vbP8 = parcelRequire(\"6vbP8\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $0a5974c6b22efc6b$var$getIdSerializer = (input, endpoint)=>{\n const headers = (0, $lL7zI.getSharedHeaders)(\"GetId\");\n const body = JSON.stringify(input);\n return (0, $lL7zI.buildHttpRpcRequest)(endpoint, headers, body);\n};\nconst $0a5974c6b22efc6b$var$getIdDeserializer = async (response)=>{\n if (response.statusCode >= 300) {\n const error = await (0, $bM38a.parseJsonError)(response);\n throw error;\n } else {\n const body = await (0, $bM38a.parseJsonBody)(response);\n return {\n IdentityId: body.IdentityId,\n $metadata: (0, $7ecIZ.parseMetadata)(response)\n };\n }\n};\n/**\n * @internal\n */ const $0a5974c6b22efc6b$export$218c8c3169c024d2 = (0, $6vbP8.composeServiceApi)((0, $lL7zI.cognitoIdentityTransferHandler), $0a5974c6b22efc6b$var$getIdSerializer, $0a5974c6b22efc6b$var$getIdDeserializer, (0, $lL7zI.defaultConfig));\n\n});\nparcelRegister(\"lL7zI\", function(module, exports) {\n\n$parcel$export(module.exports, \"cognitoIdentityTransferHandler\", () => $875b0abd80166f32$export$8029646671d2c482);\n$parcel$export(module.exports, \"defaultConfig\", () => $875b0abd80166f32$export$f84bd70098573c5c);\n$parcel$export(module.exports, \"getSharedHeaders\", () => $875b0abd80166f32$export$a46bbeaba09f7285);\n$parcel$export(module.exports, \"buildHttpRpcRequest\", () => $875b0abd80166f32$export$a692bdb7eb624f96);\n\nvar $fqhqt = parcelRequire(\"fqhqt\");\n\nvar $itEnq = parcelRequire(\"itEnq\");\n\nvar $5D9nd = parcelRequire(\"5D9nd\");\n\nvar $4ZD6k = parcelRequire(\"4ZD6k\");\nparcelRequire(\"78v1Z\");\nparcelRequire(\"lUOK3\");\n\nvar $7Ar4G = parcelRequire(\"7Ar4G\");\n\nvar $8e8Xp = parcelRequire(\"8e8Xp\");\n\nvar $bM38a = parcelRequire(\"bM38a\");\n\nvar $dj9FS = parcelRequire(\"dj9FS\");\n\nvar $iHOzP = parcelRequire(\"iHOzP\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * The service name used to sign requests if the API requires authentication.\n */ const $875b0abd80166f32$var$SERVICE_NAME = \"cognito-identity\";\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region.\n */ const $875b0abd80166f32$var$endpointResolver = ({ region: region })=>({\n url: new (0, $7Ar4G.AmplifyUrl)(`https://cognito-identity.${region}.${(0, $fqhqt.getDnsSuffix)(region)}`)\n });\n/**\n * A Cognito Identity-specific middleware that disables caching for all requests.\n */ const $875b0abd80166f32$var$disableCacheMiddleware = ()=>(next, context)=>async function disableCacheMiddleware(request) {\n request.headers[\"cache-control\"] = \"no-store\";\n return next(request);\n };\n/**\n * A Cognito Identity-specific transfer handler that does NOT sign requests, and\n * disables caching.\n *\n * @internal\n */ const $875b0abd80166f32$export$8029646671d2c482 = (0, $8e8Xp.composeTransferHandler)((0, $itEnq.unauthenticatedHandler), [\n $875b0abd80166f32$var$disableCacheMiddleware\n]);\n/**\n * @internal\n */ const $875b0abd80166f32$export$f84bd70098573c5c = {\n service: $875b0abd80166f32$var$SERVICE_NAME,\n endpointResolver: $875b0abd80166f32$var$endpointResolver,\n retryDecider: (0, $4ZD6k.getRetryDecider)((0, $bM38a.parseJsonError)),\n computeDelay: (0, $5D9nd.jitteredBackoff),\n userAgentValue: (0, $dj9FS.getAmplifyUserAgent)(),\n cache: \"no-store\"\n};\n(0, $iHOzP.observeFrameworkChanges)(()=>{\n $875b0abd80166f32$export$f84bd70098573c5c.userAgentValue = (0, $dj9FS.getAmplifyUserAgent)();\n});\n/**\n * @internal\n */ const $875b0abd80166f32$export$a46bbeaba09f7285 = (operation)=>({\n \"content-type\": \"application/x-amz-json-1.1\",\n \"x-amz-target\": `AWSCognitoIdentityService.${operation}`\n });\n/**\n * @internal\n */ const $875b0abd80166f32$export$a692bdb7eb624f96 = ({ url: url }, headers, body)=>({\n headers: headers,\n url: url,\n body: body,\n method: \"POST\"\n });\n\n});\nparcelRegister(\"fqhqt\", function(module, exports) {\n\n$parcel$export(module.exports, \"getDnsSuffix\", () => $8ce7edd304848afd$export$1c28e37cdcc37f6d);\n\nvar $amVal = parcelRequire(\"amVal\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Get the AWS Services endpoint URL's DNS suffix for a given region. A typical AWS regional service endpoint URL will\n * follow this pattern: {endpointPrefix}.{region}.{dnsSuffix}. For example, the endpoint URL for Cognito Identity in\n * us-east-1 will be cognito-identity.us-east-1.amazonaws.com. Here the DnsSuffix is `amazonaws.com`.\n *\n * @param region\n * @returns The DNS suffix\n *\n * @internal\n */ const $8ce7edd304848afd$export$1c28e37cdcc37f6d = (region)=>{\n const { partitions: partitions } = (0, $amVal.partitionsInfo);\n for (const { regions: regions, outputs: outputs, regionRegex: regionRegex } of partitions){\n const regex = new RegExp(regionRegex);\n if (regions.includes(region) || regex.test(region)) return outputs.dnsSuffix;\n }\n return (0, $amVal.defaultPartition).outputs.dnsSuffix;\n};\n\n});\nparcelRegister(\"amVal\", function(module, exports) {\n\n$parcel$export(module.exports, \"defaultPartition\", () => $5c61b283b1e239d9$export$72f3cee421ee8a74);\n$parcel$export(module.exports, \"partitionsInfo\", () => $5c61b283b1e239d9$export$d7c12af0c0f12206);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Default partition for AWS services. This is used when the region is not provided or the region is not recognized.\n *\n * @internal\n */ const $5c61b283b1e239d9$export$72f3cee421ee8a74 = {\n id: \"aws\",\n outputs: {\n dnsSuffix: \"amazonaws.com\"\n },\n regionRegex: \"^(us|eu|ap|sa|ca|me|af)\\\\-\\\\w+\\\\-\\\\d+$\",\n regions: [\n \"aws-global\"\n ]\n};\n/**\n * This data is adapted from the partition file from AWS SDK shared utilities but remove some contents for bundle size\n * concern. Information removed are `dualStackDnsSuffix`, `supportDualStack`, `supportFIPS`, restricted partitions, and\n * list of regions for each partition other than global regions.\n *\n * * Ref: https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints\n * * Ref: https://github.com/aws/aws-sdk-js-v3/blob/0201baef03c2379f1f6f7150b9d401d4b230d488/packages/util-endpoints/src/lib/aws/partitions.json#L1\n *\n * @internal\n */ const $5c61b283b1e239d9$export$d7c12af0c0f12206 = {\n partitions: [\n $5c61b283b1e239d9$export$72f3cee421ee8a74,\n {\n id: \"aws-cn\",\n outputs: {\n dnsSuffix: \"amazonaws.com.cn\"\n },\n regionRegex: \"^cn\\\\-\\\\w+\\\\-\\\\d+$\",\n regions: [\n \"aws-cn-global\"\n ]\n }\n ]\n};\n\n});\n\n\nparcelRegister(\"itEnq\", function(module, exports) {\n\n$parcel$export(module.exports, \"unauthenticatedHandler\", () => $156379934f867ed3$export$ed7e1ccf00f39c4a);\n\nvar $aWNly = parcelRequire(\"aWNly\");\n\n\n\nvar $aBoxv = parcelRequire(\"aBoxv\");\n\nvar $8e8Xp = parcelRequire(\"8e8Xp\");\n\nvar $anVi4 = parcelRequire(\"anVi4\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $156379934f867ed3$export$ed7e1ccf00f39c4a = (0, $8e8Xp.composeTransferHandler)((0, $anVi4.fetchTransferHandler), [\n (0, $aBoxv.userAgentMiddleware),\n (0, $aWNly.retryMiddleware)\n]);\n\n});\nparcelRegister(\"aWNly\", function(module, exports) {\n\n$parcel$export(module.exports, \"retryMiddleware\", () => $60f584ba62481a94$export$a3922aa5f87bae85);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $60f584ba62481a94$var$DEFAULT_RETRY_ATTEMPTS = 3;\n/**\n * Retry middleware\n */ const $60f584ba62481a94$export$a3922aa5f87bae85 = ({ maxAttempts: maxAttempts = $60f584ba62481a94$var$DEFAULT_RETRY_ATTEMPTS, retryDecider: retryDecider, computeDelay: computeDelay, abortSignal: abortSignal })=>{\n if (maxAttempts < 1) throw new Error(\"maxAttempts must be greater than 0\");\n return (next, context)=>async function retryMiddleware(request) {\n let error;\n let attemptsCount = context.attemptsCount ?? 0;\n let response;\n // When retry is not needed or max attempts is reached, either error or response will be set. This function handles either cases.\n const handleTerminalErrorOrResponse = ()=>{\n if (response) {\n $60f584ba62481a94$var$addOrIncrementMetadataAttempts(response, attemptsCount);\n return response;\n } else {\n $60f584ba62481a94$var$addOrIncrementMetadataAttempts(error, attemptsCount);\n throw error;\n }\n };\n while(!abortSignal?.aborted && attemptsCount < maxAttempts){\n try {\n response = await next(request);\n error = undefined;\n } catch (e) {\n error = e;\n response = undefined;\n }\n // context.attemptsCount may be updated after calling next handler which may retry the request by itself.\n attemptsCount = (context.attemptsCount ?? 0) > attemptsCount ? context.attemptsCount ?? 0 : attemptsCount + 1;\n context.attemptsCount = attemptsCount;\n if (await retryDecider(response, error)) {\n if (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n // prevent sleep for last attempt or cancelled request;\n const delay = computeDelay(attemptsCount);\n await $60f584ba62481a94$var$cancellableSleep(delay, abortSignal);\n }\n continue;\n } else return handleTerminalErrorOrResponse();\n }\n if (abortSignal?.aborted) throw new Error(\"Request aborted.\");\n else return handleTerminalErrorOrResponse();\n };\n};\nconst $60f584ba62481a94$var$cancellableSleep = (timeoutMs, abortSignal)=>{\n if (abortSignal?.aborted) return Promise.resolve();\n let timeoutId;\n let sleepPromiseResolveFn;\n const sleepPromise = new Promise((resolve)=>{\n sleepPromiseResolveFn = resolve;\n timeoutId = setTimeout(resolve, timeoutMs);\n });\n abortSignal?.addEventListener(\"abort\", function cancelSleep(event) {\n clearTimeout(timeoutId);\n abortSignal?.removeEventListener(\"abort\", cancelSleep);\n sleepPromiseResolveFn();\n });\n return sleepPromise;\n};\nconst $60f584ba62481a94$var$addOrIncrementMetadataAttempts = (nextHandlerOutput, attempts)=>{\n if (Object.prototype.toString.call(nextHandlerOutput) !== \"[object Object]\") return;\n nextHandlerOutput[\"$metadata\"] = {\n ...nextHandlerOutput[\"$metadata\"] ?? {},\n attempts: attempts\n };\n};\n\n});\n\nparcelRegister(\"aBoxv\", function(module, exports) {\n\n$parcel$export(module.exports, \"userAgentMiddleware\", () => $2b3779b84f2cce55$export$62c460923941c0b0);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Middleware injects user agent string to specified header(default to 'x-amz-user-agent'),\n * if the header is not set already.\n *\n * TODO: incorporate new user agent design\n */ const $2b3779b84f2cce55$export$62c460923941c0b0 = ({ userAgentHeader: userAgentHeader = \"x-amz-user-agent\", userAgentValue: userAgentValue = \"\" })=>(next)=>{\n return async function userAgentMiddleware(request) {\n if (userAgentValue.trim().length === 0) {\n const result = await next(request);\n return result;\n } else {\n const headerName = userAgentHeader.toLowerCase();\n request.headers[headerName] = request.headers[headerName] ? `${request.headers[headerName]} ${userAgentValue}` : userAgentValue;\n const response = await next(request);\n return response;\n }\n };\n };\n\n});\n\nparcelRegister(\"8e8Xp\", function(module, exports) {\n\n$parcel$export(module.exports, \"composeTransferHandler\", () => $faf95af99f8b5697$export$f074d76e52925468);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Compose a transfer handler with a core transfer handler and a list of middleware.\n * @param coreHandler Core transfer handler\n * @param middleware\tList of middleware\n * @returns A transfer handler whose option type is the union of the core\n * \ttransfer handler's option type and the middleware's option type.\n * @internal\n */ const $faf95af99f8b5697$export$f074d76e52925468 = (coreHandler, middleware)=>(request, options)=>{\n const context = {};\n let composedHandler = (request)=>coreHandler(request, options);\n for(let i = middleware.length - 1; i >= 0; i--){\n const m = middleware[i];\n const resolvedMiddleware = m(options);\n composedHandler = resolvedMiddleware(composedHandler, context);\n }\n return composedHandler(request);\n };\n\n});\n\nparcelRegister(\"anVi4\", function(module, exports) {\n\n$parcel$export(module.exports, \"fetchTransferHandler\", () => $c6ff1f678a0bf7c2$export$d2573baf35521e4c);\n\nvar $joNXB = parcelRequire(\"joNXB\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $c6ff1f678a0bf7c2$var$shouldSendBody = (method)=>![\n \"HEAD\",\n \"GET\",\n \"DELETE\"\n ].includes(method.toUpperCase());\n// TODO[AllanZhengYP]: we need to provide isCanceledError utility\nconst $c6ff1f678a0bf7c2$export$d2573baf35521e4c = async ({ url: url, method: method, headers: headers, body: body }, { abortSignal: abortSignal, cache: cache, withCrossDomainCredentials: withCrossDomainCredentials })=>{\n let resp;\n try {\n resp = await fetch(url, {\n method: method,\n headers: headers,\n body: $c6ff1f678a0bf7c2$var$shouldSendBody(method) ? body : undefined,\n signal: abortSignal,\n cache: cache,\n credentials: withCrossDomainCredentials ? \"include\" : \"same-origin\"\n });\n } catch (e) {\n // TODO: needs to revise error handling in v6\n // For now this is a thin wrapper over original fetch error similar to cognito-identity-js package.\n // Ref: https://github.com/aws-amplify/amplify-js/blob/4fbc8c0a2be7526aab723579b4c95b552195a80b/packages/amazon-cognito-identity-js/src/Client.js#L103-L108\n if (e instanceof TypeError) throw new Error(\"Network error\");\n throw e;\n }\n const responseHeaders = {};\n resp.headers?.forEach((value, key)=>{\n responseHeaders[key.toLowerCase()] = value;\n });\n const httpResponse = {\n statusCode: resp.status,\n headers: responseHeaders,\n body: null\n };\n // resp.body is a ReadableStream according to Fetch API spec, but React Native\n // does not implement it.\n const bodyWithMixin = Object.assign(resp.body ?? {}, {\n text: (0, $joNXB.withMemoization)(()=>resp.text()),\n blob: (0, $joNXB.withMemoization)(()=>resp.blob()),\n json: (0, $joNXB.withMemoization)(()=>resp.json())\n });\n return {\n ...httpResponse,\n body: bodyWithMixin\n };\n};\n\n});\nparcelRegister(\"joNXB\", function(module, exports) {\n\n$parcel$export(module.exports, \"withMemoization\", () => $0cf8b26b324855c8$export$580ad1ce15092b15);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Cache the payload of a response body. It allows multiple calls to the body,\n * for example, when reading the body in both retry decider and error deserializer.\n * Caching body is allowed here because we call the body accessor(blob(), json(),\n * etc.) when body is small or streaming implementation is not available(RN).\n *\n * @internal\n */ const $0cf8b26b324855c8$export$580ad1ce15092b15 = (payloadAccessor)=>{\n let cached;\n return ()=>{\n if (!cached) // Explicitly not awaiting. Intermediate await would add overhead and\n // introduce a possible race in the event that this wrapper is called\n // again before the first `payloadAccessor` call resolves.\n cached = payloadAccessor();\n return cached;\n };\n};\n\n});\n\n\n\nparcelRegister(\"5D9nd\", function(module, exports) {\n\n$parcel$export(module.exports, \"jitteredBackoff\", () => $6b984381f509b0c4$export$caea50bde345f648);\n\n\nvar $h05tY = parcelRequire(\"h05tY\");\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// TODO: [v6] The separate retry utility is used by Data packages now and will replaced by retry middleware.\nconst $6b984381f509b0c4$var$DEFAULT_MAX_DELAY_MS = 300000;\nconst $6b984381f509b0c4$export$caea50bde345f648 = (attempt)=>{\n const delayFunction = (0, $h05tY.jitteredBackoff)($6b984381f509b0c4$var$DEFAULT_MAX_DELAY_MS);\n const delay = delayFunction(attempt);\n // The delayFunction returns false when the delay is greater than the max delay(5 mins).\n // In this case, the retry middleware will delay 5 mins instead, as a ceiling of the delay.\n return delay === false ? $6b984381f509b0c4$var$DEFAULT_MAX_DELAY_MS : delay;\n};\n\n});\nparcelRegister(\"h05tY\", function(module, exports) {\n\n$parcel$export(module.exports, \"jitteredBackoff\", () => $bb00929d82f30d06$export$caea50bde345f648);\n\nvar $1Ns4m = parcelRequire(\"1Ns4m\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @private\n * Internal use of Amplify only\n */ function $bb00929d82f30d06$export$caea50bde345f648(maxDelayMs = (0, $1Ns4m.MAX_DELAY_MS)) {\n const BASE_TIME_MS = 100;\n const JITTER_FACTOR = 100;\n return (attempt)=>{\n const delay = 2 ** attempt * BASE_TIME_MS + JITTER_FACTOR * Math.random();\n return delay > maxDelayMs ? false : delay;\n };\n}\n\n});\nparcelRegister(\"1Ns4m\", function(module, exports) {\n\n$parcel$export(module.exports, \"MAX_DELAY_MS\", () => $2ebb2babc51c1967$export$76041b1400befb8b);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $2ebb2babc51c1967$export$76041b1400befb8b = 300000;\n\n});\n\n\n\nparcelRegister(\"4ZD6k\", function(module, exports) {\n\n$parcel$export(module.exports, \"getRetryDecider\", () => $8eda02c680edd0d6$export$b919d98317a7685f);\n\nvar $i3rGM = parcelRequire(\"i3rGM\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Get retry decider function\n * @param errorParser Function to load JavaScript error from HTTP response\n */ const $8eda02c680edd0d6$export$b919d98317a7685f = (errorParser)=>async (response, error)=>{\n const parsedError = error ?? await errorParser(response) ?? undefined;\n const errorCode = parsedError?.[\"code\"];\n const statusCode = response?.statusCode;\n return $8eda02c680edd0d6$var$isConnectionError(error) || $8eda02c680edd0d6$var$isThrottlingError(statusCode, errorCode) || (0, $i3rGM.isClockSkewError)(errorCode) || $8eda02c680edd0d6$var$isServerSideError(statusCode, errorCode);\n };\n// reference: https://github.com/aws/aws-sdk-js-v3/blob/ab0e7be36e7e7f8a0c04834357aaad643c7912c3/packages/service-error-classification/src/constants.ts#L22-L37\nconst $8eda02c680edd0d6$var$THROTTLING_ERROR_CODES = [\n \"BandwidthLimitExceeded\",\n \"EC2ThrottledException\",\n \"LimitExceededException\",\n \"PriorRequestNotComplete\",\n \"ProvisionedThroughputExceededException\",\n \"RequestLimitExceeded\",\n \"RequestThrottled\",\n \"RequestThrottledException\",\n \"SlowDown\",\n \"ThrottledException\",\n \"Throttling\",\n \"ThrottlingException\",\n \"TooManyRequestsException\"\n];\nconst $8eda02c680edd0d6$var$TIMEOUT_ERROR_CODES = [\n \"TimeoutError\",\n \"RequestTimeout\",\n \"RequestTimeoutException\"\n];\nconst $8eda02c680edd0d6$var$isThrottlingError = (statusCode, errorCode)=>statusCode === 429 || !!errorCode && $8eda02c680edd0d6$var$THROTTLING_ERROR_CODES.includes(errorCode);\nconst $8eda02c680edd0d6$var$isConnectionError = (error)=>error?.[\"name\"] === \"Network error\";\nconst $8eda02c680edd0d6$var$isServerSideError = (statusCode, errorCode)=>!!statusCode && [\n 500,\n 502,\n 503,\n 504\n ].includes(statusCode) || !!errorCode && $8eda02c680edd0d6$var$TIMEOUT_ERROR_CODES.includes(errorCode);\n\n});\nparcelRegister(\"i3rGM\", function(module, exports) {\n\n$parcel$export(module.exports, \"isClockSkewError\", () => $25c9c2f444e10e78$export$7b87435661177a94);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// via https://github.com/aws/aws-sdk-js-v3/blob/ab0e7be36e7e7f8a0c04834357aaad643c7912c3/packages/service-error-classification/src/constants.ts#L8\nconst $25c9c2f444e10e78$var$CLOCK_SKEW_ERROR_CODES = [\n \"AuthFailure\",\n \"InvalidSignatureException\",\n \"RequestExpired\",\n \"RequestInTheFuture\",\n \"RequestTimeTooSkewed\",\n \"SignatureDoesNotMatch\",\n \"BadRequestException\"\n];\n/**\n * Given an error code, returns true if it is related to a clock skew error.\n *\n * @param errorCode String representation of some error.\n * @returns True if given error is present in `CLOCK_SKEW_ERROR_CODES`, false otherwise.\n *\n * @internal\n */ const $25c9c2f444e10e78$export$7b87435661177a94 = (errorCode)=>!!errorCode && $25c9c2f444e10e78$var$CLOCK_SKEW_ERROR_CODES.includes(errorCode);\n\n});\n\n\nparcelRegister(\"78v1Z\", function(module, exports) {\n$parcel$export(module.exports, \"Sha256\", () => (parcelRequire(\"4xNDb\")).Sha256);\nparcelRequire(\"4xNDb\");\n\n});\nparcelRegister(\"4xNDb\", function(module, exports) {\n\n$parcel$export(module.exports, \"Sha256\", () => $34f0be31e76b3852$export$3b58ea8124ac5e28);\n\nvar $7WQrb = parcelRequire(\"7WQrb\");\n\nvar $4saKg = parcelRequire(\"4saKg\");\n\nvar $bGlNU = parcelRequire(\"bGlNU\");\nparcelRequire(\"6dvWF\");\nvar $3cPkP = parcelRequire(\"3cPkP\");\nvar $ZB00P = parcelRequire(\"ZB00P\");\nvar $34f0be31e76b3852$export$3b58ea8124ac5e28 = /** @class */ function() {\n function Sha256(secret) {\n this.secret = secret;\n this.hash = new (0, $bGlNU.RawSha256)();\n this.reset();\n }\n Sha256.prototype.update = function(toHash) {\n if ((0, $ZB00P.isEmptyData)(toHash) || this.error) return;\n try {\n this.hash.update((0, $3cPkP.convertToBuffer)(toHash));\n } catch (e) {\n this.error = e;\n }\n };\n /* This synchronous method keeps compatibility\n * with the v2 aws-sdk.\n */ Sha256.prototype.digestSync = function() {\n if (this.error) throw this.error;\n if (this.outer) {\n if (!this.outer.finished) this.outer.update(this.hash.digest());\n return this.outer.digest();\n }\n return this.hash.digest();\n };\n /* The underlying digest method here is synchronous.\n * To keep the same interface with the other hash functions\n * the default is to expose this as an async method.\n * However, it can sometimes be useful to have a sync method.\n */ Sha256.prototype.digest = function() {\n return (0, $7WQrb.__awaiter)(this, void 0, void 0, function() {\n return (0, $7WQrb.__generator)(this, function(_a) {\n return [\n 2 /*return*/ ,\n this.digestSync()\n ];\n });\n });\n };\n Sha256.prototype.reset = function() {\n this.hash = new (0, $bGlNU.RawSha256)();\n if (this.secret) {\n this.outer = new (0, $bGlNU.RawSha256)();\n var inner = $34f0be31e76b3852$var$bufferFromSecret(this.secret);\n var outer = new Uint8Array((0, $4saKg.BLOCK_SIZE));\n outer.set(inner);\n for(var i = 0; i < (0, $4saKg.BLOCK_SIZE); i++){\n inner[i] ^= 0x36;\n outer[i] ^= 0x5c;\n }\n this.hash.update(inner);\n this.outer.update(outer);\n // overwrite the copied key in memory\n for(var i = 0; i < inner.byteLength; i++)inner[i] = 0;\n }\n };\n return Sha256;\n}();\nfunction $34f0be31e76b3852$var$bufferFromSecret(secret) {\n var input = (0, $3cPkP.convertToBuffer)(secret);\n if (input.byteLength > (0, $4saKg.BLOCK_SIZE)) {\n var bufferHash = new (0, $bGlNU.RawSha256)();\n bufferHash.update(input);\n input = bufferHash.digest();\n }\n var buffer = new Uint8Array((0, $4saKg.BLOCK_SIZE));\n buffer.set(input);\n return buffer;\n}\n\n});\nparcelRegister(\"7WQrb\", function(module, exports) {\n\n$parcel$export(module.exports, \"__extends\", () => $5c96a02c592fcff1$export$a8ba968b8961cb8a);\n$parcel$export(module.exports, \"__awaiter\", () => $5c96a02c592fcff1$export$1050f835b63b671e);\n$parcel$export(module.exports, \"__generator\", () => $5c96a02c592fcff1$export$67ebef60e6f28a6);\n$parcel$export(module.exports, \"__values\", () => $5c96a02c592fcff1$export$19a8beecd37a4c45);\n$parcel$export(module.exports, \"__read\", () => $5c96a02c592fcff1$export$8d051b38c9118094);\n$parcel$export(module.exports, \"__spreadArray\", () => $5c96a02c592fcff1$export$1216008129fb82ed);\n$parcel$export(module.exports, \"__await\", () => $5c96a02c592fcff1$export$10c90e4f7922046c);\n$parcel$export(module.exports, \"__asyncGenerator\", () => $5c96a02c592fcff1$export$e427f37a30a4de9b);\n$parcel$export(module.exports, \"__asyncValues\", () => $5c96a02c592fcff1$export$e3b29a3d6162315f);\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***************************************************************************** */ /* global Reflect, Promise, SuppressedError, Symbol */ var $5c96a02c592fcff1$var$extendStatics = function(d, b) {\n $5c96a02c592fcff1$var$extendStatics = Object.setPrototypeOf || ({\n __proto__: []\n }) instanceof Array && function(d, b) {\n d.__proto__ = b;\n } || function(d, b) {\n for(var p in b)if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];\n };\n return $5c96a02c592fcff1$var$extendStatics(d, b);\n};\nfunction $5c96a02c592fcff1$export$a8ba968b8961cb8a(d, b) {\n if (typeof b !== \"function\" && b !== null) throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n $5c96a02c592fcff1$var$extendStatics(d, b);\n function __() {\n this.constructor = d;\n }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\nvar $5c96a02c592fcff1$export$18ce0697a983be9b = function() {\n $5c96a02c592fcff1$export$18ce0697a983be9b = Object.assign || function __assign(t) {\n for(var s, i = 1, n = arguments.length; i < n; i++){\n s = arguments[i];\n for(var p in s)if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n };\n return $5c96a02c592fcff1$export$18ce0697a983be9b.apply(this, arguments);\n};\nfunction $5c96a02c592fcff1$export$3c9a16f847548506(s, e) {\n var t = {};\n for(var p in s)if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") {\n for(var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++)if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n}\nfunction $5c96a02c592fcff1$export$29e00dfd3077644b(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\nfunction $5c96a02c592fcff1$export$d5ad3fd78186038f(paramIndex, decorator) {\n return function(target, key) {\n decorator(target, key, paramIndex);\n };\n}\nfunction $5c96a02c592fcff1$export$3a84e1ae4e97e9b0(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) {\n if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\");\n return f;\n }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for(var i = decorators.length - 1; i >= 0; i--){\n var context = {};\n for(var p in contextIn)context[p] = p === \"access\" ? {} : contextIn[p];\n for(var p in contextIn.access)context.access[p] = contextIn.access[p];\n context.addInitializer = function(f) {\n if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\");\n extraInitializers.push(accept(f || null));\n };\n var result = (0, decorators[i])(kind === \"accessor\" ? {\n get: descriptor.get,\n set: descriptor.set\n } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n } else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n}\nfunction $5c96a02c592fcff1$export$d831c04e792af3d(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for(var i = 0; i < initializers.length; i++)value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n return useValue ? value : void 0;\n}\nfunction $5c96a02c592fcff1$export$6a2a36740a146cb8(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n}\nfunction $5c96a02c592fcff1$export$d1a06452d3489bc7(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", {\n configurable: true,\n value: prefix ? \"\".concat(prefix, \" \", name) : name\n });\n}\nfunction $5c96a02c592fcff1$export$f1db080c865becb9(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\nfunction $5c96a02c592fcff1$export$1050f835b63b671e(thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function(resolve) {\n resolve(value);\n });\n }\n return new (P || (P = Promise))(function(resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\nfunction $5c96a02c592fcff1$export$67ebef60e6f28a6(thisArg, body) {\n var _ = {\n label: 0,\n sent: function() {\n if (t[0] & 1) throw t[1];\n return t[1];\n },\n trys: [],\n ops: []\n }, f, y, t, g;\n return g = {\n next: verb(0),\n \"throw\": verb(1),\n \"return\": verb(2)\n }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() {\n return this;\n }), g;\n function verb(n) {\n return function(v) {\n return step([\n n,\n v\n ]);\n };\n }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while(g && (g = 0, op[0] && (_ = 0)), _)try {\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;\n if (y = 0, t) op = [\n op[0] & 2,\n t.value\n ];\n switch(op[0]){\n case 0:\n case 1:\n t = op;\n break;\n case 4:\n _.label++;\n return {\n value: op[1],\n done: false\n };\n case 5:\n _.label++;\n y = op[1];\n op = [\n 0\n ];\n continue;\n case 7:\n op = _.ops.pop();\n _.trys.pop();\n continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {\n _ = 0;\n continue;\n }\n if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {\n _.label = op[1];\n break;\n }\n if (op[0] === 6 && _.label < t[1]) {\n _.label = t[1];\n t = op;\n break;\n }\n if (t && _.label < t[2]) {\n _.label = t[2];\n _.ops.push(op);\n break;\n }\n if (t[2]) _.ops.pop();\n _.trys.pop();\n continue;\n }\n op = body.call(thisArg, _);\n } catch (e) {\n op = [\n 6,\n e\n ];\n y = 0;\n } finally{\n f = t = 0;\n }\n if (op[0] & 5) throw op[1];\n return {\n value: op[0] ? op[1] : void 0,\n done: true\n };\n }\n}\nvar $5c96a02c592fcff1$export$45d3717a4c69092e = Object.create ? function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) desc = {\n enumerable: true,\n get: function() {\n return m[k];\n }\n };\n Object.defineProperty(o, k2, desc);\n} : function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n};\nfunction $5c96a02c592fcff1$export$f33643c0debef087(m, o) {\n for(var p in m)if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) $5c96a02c592fcff1$export$45d3717a4c69092e(o, m, p);\n}\nfunction $5c96a02c592fcff1$export$19a8beecd37a4c45(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function() {\n if (o && i >= o.length) o = void 0;\n return {\n value: o && o[i++],\n done: !o\n };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\nfunction $5c96a02c592fcff1$export$8d051b38c9118094(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while((n === void 0 || n-- > 0) && !(r = i.next()).done)ar.push(r.value);\n } catch (error) {\n e = {\n error: error\n };\n } finally{\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n } finally{\n if (e) throw e.error;\n }\n }\n return ar;\n}\nfunction $5c96a02c592fcff1$export$afc72e2116322959() {\n for(var ar = [], i = 0; i < arguments.length; i++)ar = ar.concat($5c96a02c592fcff1$export$8d051b38c9118094(arguments[i]));\n return ar;\n}\nfunction $5c96a02c592fcff1$export$6388937ca91ccae8() {\n for(var s = 0, i = 0, il = arguments.length; i < il; i++)s += arguments[i].length;\n for(var r = Array(s), k = 0, i = 0; i < il; i++)for(var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)r[k] = a[j];\n return r;\n}\nfunction $5c96a02c592fcff1$export$1216008129fb82ed(to, from, pack) {\n if (pack || arguments.length === 2) {\n for(var i = 0, l = from.length, ar; i < l; i++)if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\nfunction $5c96a02c592fcff1$export$10c90e4f7922046c(v) {\n return this instanceof $5c96a02c592fcff1$export$10c90e4f7922046c ? (this.v = v, this) : new $5c96a02c592fcff1$export$10c90e4f7922046c(v);\n}\nfunction $5c96a02c592fcff1$export$e427f37a30a4de9b(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function() {\n return this;\n }, i;\n function verb(n) {\n if (g[n]) i[n] = function(v) {\n return new Promise(function(a, b) {\n q.push([\n n,\n v,\n a,\n b\n ]) > 1 || resume(n, v);\n });\n };\n }\n function resume(n, v) {\n try {\n step(g[n](v));\n } catch (e) {\n settle(q[0][3], e);\n }\n }\n function step(r) {\n r.value instanceof $5c96a02c592fcff1$export$10c90e4f7922046c ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r);\n }\n function fulfill(value) {\n resume(\"next\", value);\n }\n function reject(value) {\n resume(\"throw\", value);\n }\n function settle(f, v) {\n if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]);\n }\n}\nfunction $5c96a02c592fcff1$export$bbd80228419bb833(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function(e) {\n throw e;\n }), verb(\"return\"), i[Symbol.iterator] = function() {\n return this;\n }, i;\n function verb(n, f) {\n i[n] = o[n] ? function(v) {\n return (p = !p) ? {\n value: $5c96a02c592fcff1$export$10c90e4f7922046c(o[n](v)),\n done: false\n } : f ? f(v) : v;\n } : f;\n }\n}\nfunction $5c96a02c592fcff1$export$e3b29a3d6162315f(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof $5c96a02c592fcff1$export$19a8beecd37a4c45 === \"function\" ? $5c96a02c592fcff1$export$19a8beecd37a4c45(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function() {\n return this;\n }, i);\n function verb(n) {\n i[n] = o[n] && function(v) {\n return new Promise(function(resolve, reject) {\n v = o[n](v), settle(resolve, reject, v.done, v.value);\n });\n };\n }\n function settle(resolve, reject, d, v) {\n Promise.resolve(v).then(function(v) {\n resolve({\n value: v,\n done: d\n });\n }, reject);\n }\n}\nfunction $5c96a02c592fcff1$export$4fb47efe1390b86f(cooked, raw) {\n if (Object.defineProperty) Object.defineProperty(cooked, \"raw\", {\n value: raw\n });\n else cooked.raw = raw;\n return cooked;\n}\nvar $5c96a02c592fcff1$var$__setModuleDefault = Object.create ? function(o, v) {\n Object.defineProperty(o, \"default\", {\n enumerable: true,\n value: v\n });\n} : function(o, v) {\n o[\"default\"] = v;\n};\nfunction $5c96a02c592fcff1$export$c21735bcef00d192(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) {\n for(var k in mod)if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) $5c96a02c592fcff1$export$45d3717a4c69092e(result, mod, k);\n }\n $5c96a02c592fcff1$var$__setModuleDefault(result, mod);\n return result;\n}\nfunction $5c96a02c592fcff1$export$da59b14a69baef04(mod) {\n return mod && mod.__esModule ? mod : {\n default: mod\n };\n}\nfunction $5c96a02c592fcff1$export$d5dcaf168c640c35(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\nfunction $5c96a02c592fcff1$export$d40a35129aaff81f(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value), value;\n}\nfunction $5c96a02c592fcff1$export$81fdc39f203e4e04(state, receiver) {\n if (receiver === null || typeof receiver !== \"object\" && typeof receiver !== \"function\") throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\nfunction $5c96a02c592fcff1$export$88ac25d8e944e405(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({\n value: value,\n dispose: dispose,\n async: async\n });\n } else if (async) env.stack.push({\n async: true\n });\n return value;\n}\nvar $5c96a02c592fcff1$var$_SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function(error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\nfunction $5c96a02c592fcff1$export$8f076105dc360e92(env) {\n function fail(e) {\n env.error = env.hasError ? new $5c96a02c592fcff1$var$_SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while(env.stack.length){\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) {\n fail(e);\n return next();\n });\n } catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\nvar $5c96a02c592fcff1$export$2e2bcd8739ae039 = {\n __extends: $5c96a02c592fcff1$export$a8ba968b8961cb8a,\n __assign: $5c96a02c592fcff1$export$18ce0697a983be9b,\n __rest: $5c96a02c592fcff1$export$3c9a16f847548506,\n __decorate: $5c96a02c592fcff1$export$29e00dfd3077644b,\n __param: $5c96a02c592fcff1$export$d5ad3fd78186038f,\n __metadata: $5c96a02c592fcff1$export$f1db080c865becb9,\n __awaiter: $5c96a02c592fcff1$export$1050f835b63b671e,\n __generator: $5c96a02c592fcff1$export$67ebef60e6f28a6,\n __createBinding: $5c96a02c592fcff1$export$45d3717a4c69092e,\n __exportStar: $5c96a02c592fcff1$export$f33643c0debef087,\n __values: $5c96a02c592fcff1$export$19a8beecd37a4c45,\n __read: $5c96a02c592fcff1$export$8d051b38c9118094,\n __spread: $5c96a02c592fcff1$export$afc72e2116322959,\n __spreadArrays: $5c96a02c592fcff1$export$6388937ca91ccae8,\n __spreadArray: $5c96a02c592fcff1$export$1216008129fb82ed,\n __await: $5c96a02c592fcff1$export$10c90e4f7922046c,\n __asyncGenerator: $5c96a02c592fcff1$export$e427f37a30a4de9b,\n __asyncDelegator: $5c96a02c592fcff1$export$bbd80228419bb833,\n __asyncValues: $5c96a02c592fcff1$export$e3b29a3d6162315f,\n __makeTemplateObject: $5c96a02c592fcff1$export$4fb47efe1390b86f,\n __importStar: $5c96a02c592fcff1$export$c21735bcef00d192,\n __importDefault: $5c96a02c592fcff1$export$da59b14a69baef04,\n __classPrivateFieldGet: $5c96a02c592fcff1$export$d5dcaf168c640c35,\n __classPrivateFieldSet: $5c96a02c592fcff1$export$d40a35129aaff81f,\n __classPrivateFieldIn: $5c96a02c592fcff1$export$81fdc39f203e4e04,\n __addDisposableResource: $5c96a02c592fcff1$export$88ac25d8e944e405,\n __disposeResources: $5c96a02c592fcff1$export$8f076105dc360e92\n};\n\n});\n\nparcelRegister(\"4saKg\", function(module, exports) {\n\n$parcel$export(module.exports, \"BLOCK_SIZE\", () => $33e21cb3f745e23a$export$b2e3d6d444266a5c);\n$parcel$export(module.exports, \"DIGEST_LENGTH\", () => $33e21cb3f745e23a$export$d7bd469488748c5f);\n$parcel$export(module.exports, \"KEY\", () => $33e21cb3f745e23a$export$7167c830cefcb6b5);\n$parcel$export(module.exports, \"INIT\", () => $33e21cb3f745e23a$export$d788bc089976c004);\n$parcel$export(module.exports, \"MAX_HASHABLE_LENGTH\", () => $33e21cb3f745e23a$export$856b3d11dc447b50);\n/**\n * @internal\n */ var $33e21cb3f745e23a$export$b2e3d6d444266a5c = 64;\nvar $33e21cb3f745e23a$export$d7bd469488748c5f = 32;\nvar $33e21cb3f745e23a$export$7167c830cefcb6b5 = new Uint32Array([\n 0x428a2f98,\n 0x71374491,\n 0xb5c0fbcf,\n 0xe9b5dba5,\n 0x3956c25b,\n 0x59f111f1,\n 0x923f82a4,\n 0xab1c5ed5,\n 0xd807aa98,\n 0x12835b01,\n 0x243185be,\n 0x550c7dc3,\n 0x72be5d74,\n 0x80deb1fe,\n 0x9bdc06a7,\n 0xc19bf174,\n 0xe49b69c1,\n 0xefbe4786,\n 0x0fc19dc6,\n 0x240ca1cc,\n 0x2de92c6f,\n 0x4a7484aa,\n 0x5cb0a9dc,\n 0x76f988da,\n 0x983e5152,\n 0xa831c66d,\n 0xb00327c8,\n 0xbf597fc7,\n 0xc6e00bf3,\n 0xd5a79147,\n 0x06ca6351,\n 0x14292967,\n 0x27b70a85,\n 0x2e1b2138,\n 0x4d2c6dfc,\n 0x53380d13,\n 0x650a7354,\n 0x766a0abb,\n 0x81c2c92e,\n 0x92722c85,\n 0xa2bfe8a1,\n 0xa81a664b,\n 0xc24b8b70,\n 0xc76c51a3,\n 0xd192e819,\n 0xd6990624,\n 0xf40e3585,\n 0x106aa070,\n 0x19a4c116,\n 0x1e376c08,\n 0x2748774c,\n 0x34b0bcb5,\n 0x391c0cb3,\n 0x4ed8aa4a,\n 0x5b9cca4f,\n 0x682e6ff3,\n 0x748f82ee,\n 0x78a5636f,\n 0x84c87814,\n 0x8cc70208,\n 0x90befffa,\n 0xa4506ceb,\n 0xbef9a3f7,\n 0xc67178f2\n]);\nvar $33e21cb3f745e23a$export$d788bc089976c004 = [\n 0x6a09e667,\n 0xbb67ae85,\n 0x3c6ef372,\n 0xa54ff53a,\n 0x510e527f,\n 0x9b05688c,\n 0x1f83d9ab,\n 0x5be0cd19\n];\nvar $33e21cb3f745e23a$export$856b3d11dc447b50 = Math.pow(2, 53) - 1;\n\n});\n\nparcelRegister(\"bGlNU\", function(module, exports) {\n\n$parcel$export(module.exports, \"RawSha256\", () => $881487c8a44da5fa$export$aab6bc1ad3c77a42);\n\nvar $4saKg = parcelRequire(\"4saKg\");\n/**\n * @internal\n */ var $881487c8a44da5fa$export$aab6bc1ad3c77a42 = /** @class */ function() {\n function RawSha256() {\n this.state = Int32Array.from((0, $4saKg.INIT));\n this.temp = new Int32Array(64);\n this.buffer = new Uint8Array(64);\n this.bufferLength = 0;\n this.bytesHashed = 0;\n /**\n * @internal\n */ this.finished = false;\n }\n RawSha256.prototype.update = function(data) {\n if (this.finished) throw new Error(\"Attempted to update an already finished hash.\");\n var position = 0;\n var byteLength = data.byteLength;\n this.bytesHashed += byteLength;\n if (this.bytesHashed * 8 > (0, $4saKg.MAX_HASHABLE_LENGTH)) throw new Error(\"Cannot hash more than 2^53 - 1 bits\");\n while(byteLength > 0){\n this.buffer[this.bufferLength++] = data[position++];\n byteLength--;\n if (this.bufferLength === (0, $4saKg.BLOCK_SIZE)) {\n this.hashBuffer();\n this.bufferLength = 0;\n }\n }\n };\n RawSha256.prototype.digest = function() {\n if (!this.finished) {\n var bitsHashed = this.bytesHashed * 8;\n var bufferView = new DataView(this.buffer.buffer, this.buffer.byteOffset, this.buffer.byteLength);\n var undecoratedLength = this.bufferLength;\n bufferView.setUint8(this.bufferLength++, 0x80);\n // Ensure the final block has enough room for the hashed length\n if (undecoratedLength % (0, $4saKg.BLOCK_SIZE) >= (0, $4saKg.BLOCK_SIZE) - 8) {\n for(var i = this.bufferLength; i < (0, $4saKg.BLOCK_SIZE); i++)bufferView.setUint8(i, 0);\n this.hashBuffer();\n this.bufferLength = 0;\n }\n for(var i = this.bufferLength; i < (0, $4saKg.BLOCK_SIZE) - 8; i++)bufferView.setUint8(i, 0);\n bufferView.setUint32((0, $4saKg.BLOCK_SIZE) - 8, Math.floor(bitsHashed / 0x100000000), true);\n bufferView.setUint32((0, $4saKg.BLOCK_SIZE) - 4, bitsHashed);\n this.hashBuffer();\n this.finished = true;\n }\n // The value in state is little-endian rather than big-endian, so flip\n // each word into a new Uint8Array\n var out = new Uint8Array((0, $4saKg.DIGEST_LENGTH));\n for(var i = 0; i < 8; i++){\n out[i * 4] = this.state[i] >>> 24 & 0xff;\n out[i * 4 + 1] = this.state[i] >>> 16 & 0xff;\n out[i * 4 + 2] = this.state[i] >>> 8 & 0xff;\n out[i * 4 + 3] = this.state[i] >>> 0 & 0xff;\n }\n return out;\n };\n RawSha256.prototype.hashBuffer = function() {\n var _a = this, buffer = _a.buffer, state = _a.state;\n var state0 = state[0], state1 = state[1], state2 = state[2], state3 = state[3], state4 = state[4], state5 = state[5], state6 = state[6], state7 = state[7];\n for(var i = 0; i < (0, $4saKg.BLOCK_SIZE); i++){\n if (i < 16) this.temp[i] = (buffer[i * 4] & 0xff) << 24 | (buffer[i * 4 + 1] & 0xff) << 16 | (buffer[i * 4 + 2] & 0xff) << 8 | buffer[i * 4 + 3] & 0xff;\n else {\n var u = this.temp[i - 2];\n var t1_1 = (u >>> 17 | u << 15) ^ (u >>> 19 | u << 13) ^ u >>> 10;\n u = this.temp[i - 15];\n var t2_1 = (u >>> 7 | u << 25) ^ (u >>> 18 | u << 14) ^ u >>> 3;\n this.temp[i] = (t1_1 + this.temp[i - 7] | 0) + (t2_1 + this.temp[i - 16] | 0);\n }\n var t1 = (((state4 >>> 6 | state4 << 26) ^ (state4 >>> 11 | state4 << 21) ^ (state4 >>> 25 | state4 << 7)) + (state4 & state5 ^ ~state4 & state6) | 0) + (state7 + ((0, $4saKg.KEY)[i] + this.temp[i] | 0) | 0) | 0;\n var t2 = ((state0 >>> 2 | state0 << 30) ^ (state0 >>> 13 | state0 << 19) ^ (state0 >>> 22 | state0 << 10)) + (state0 & state1 ^ state0 & state2 ^ state1 & state2) | 0;\n state7 = state6;\n state6 = state5;\n state5 = state4;\n state4 = state3 + t1 | 0;\n state3 = state2;\n state2 = state1;\n state1 = state0;\n state0 = t1 + t2 | 0;\n }\n state[0] += state0;\n state[1] += state1;\n state[2] += state2;\n state[3] += state3;\n state[4] += state4;\n state[5] += state5;\n state[6] += state6;\n state[7] += state7;\n };\n return RawSha256;\n}();\n\n});\n\nparcelRegister(\"6dvWF\", function(module, exports) {\n\n$parcel$export(module.exports, \"convertToBuffer\", () => (parcelRequire(\"3cPkP\")).convertToBuffer);\n$parcel$export(module.exports, \"isEmptyData\", () => (parcelRequire(\"ZB00P\")).isEmptyData);\n// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nvar $3cPkP = parcelRequire(\"3cPkP\");\n\nvar $ZB00P = parcelRequire(\"ZB00P\");\n\nvar $aecxA = parcelRequire(\"aecxA\");\n\nvar $kjfFh = parcelRequire(\"kjfFh\");\n\n});\nparcelRegister(\"3cPkP\", function(module, exports) {\n\n$parcel$export(module.exports, \"convertToBuffer\", () => $255a5028cde3f3bc$export$4f21f20c2f1a9063);\n// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nparcelRequire(\"geIv0\");\nvar $1uolR = parcelRequire(\"1uolR\");\n\nvar $6ZWSX = parcelRequire(\"6ZWSX\");\nvar $255a5028cde3f3bc$require$Buffer = $6ZWSX.Buffer;\n// Quick polyfill\nvar $255a5028cde3f3bc$var$fromUtf8 = typeof $255a5028cde3f3bc$require$Buffer !== \"undefined\" && $255a5028cde3f3bc$require$Buffer.from ? function(input) {\n return $255a5028cde3f3bc$require$Buffer.from(input, \"utf8\");\n} : (0, $1uolR.fromUtf8);\nfunction $255a5028cde3f3bc$export$4f21f20c2f1a9063(data) {\n // Already a Uint8, do nothing\n if (data instanceof Uint8Array) return data;\n if (typeof data === \"string\") return $255a5028cde3f3bc$var$fromUtf8(data);\n if (ArrayBuffer.isView(data)) return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n return new Uint8Array(data);\n}\n\n});\nparcelRegister(\"geIv0\", function(module, exports) {\n$parcel$export(module.exports, \"fromUtf8\", () => (parcelRequire(\"1uolR\")).fromUtf8);\nparcelRequire(\"1uolR\");\nparcelRequire(\"jGtn4\");\nparcelRequire(\"3cIry\");\n\n});\nparcelRegister(\"1uolR\", function(module, exports) {\n\n$parcel$export(module.exports, \"fromUtf8\", () => $115b7b7cc5a24eaf$export$c7c5cef950a4d2fc);\nconst $115b7b7cc5a24eaf$export$c7c5cef950a4d2fc = (input)=>new TextEncoder().encode(input);\n\n});\n\nparcelRegister(\"jGtn4\", function(module, exports) {\n\nvar $1uolR = parcelRequire(\"1uolR\");\nconst $e548b91235db5cfc$export$73470fd2221e6aef = (data)=>{\n if (typeof data === \"string\") return (0, $1uolR.fromUtf8)(data);\n if (ArrayBuffer.isView(data)) return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n return new Uint8Array(data);\n};\n\n});\n\nparcelRegister(\"3cIry\", function(module, exports) {\nconst $2554f7a5fe934436$export$b4b216764bb846eb = (input)=>new TextDecoder(\"utf-8\").decode(input);\n\n});\n\n\nparcelRegister(\"6ZWSX\", function(module, exports) {\n\n$parcel$export(module.exports, \"Buffer\", () => $51861dfc7ca9d588$export$a143d493d941bafc, (v) => $51861dfc7ca9d588$export$a143d493d941bafc = v);\n$parcel$export(module.exports, \"INSPECT_MAX_BYTES\", () => $51861dfc7ca9d588$export$f99ded8fe4b79145, (v) => $51861dfc7ca9d588$export$f99ded8fe4b79145 = v);\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */ /* eslint-disable no-proto */ var $51861dfc7ca9d588$export$a143d493d941bafc;\nvar $51861dfc7ca9d588$export$e4cf37d7f6fb9e0a;\nvar $51861dfc7ca9d588$export$f99ded8fe4b79145;\nvar $51861dfc7ca9d588$export$599f31c3813fae4d;\n\"use strict\";\n\nvar $kuxul = parcelRequire(\"kuxul\");\n\nvar $9NvM5 = parcelRequire(\"9NvM5\");\nvar $51861dfc7ca9d588$var$customInspectSymbol = typeof Symbol === \"function\" && typeof Symbol[\"for\"] === \"function\" // eslint-disable-line dot-notation\n ? Symbol[\"for\"](\"nodejs.util.inspect.custom\") // eslint-disable-line dot-notation\n : null;\n$51861dfc7ca9d588$export$a143d493d941bafc = $51861dfc7ca9d588$var$Buffer;\n$51861dfc7ca9d588$export$e4cf37d7f6fb9e0a = $51861dfc7ca9d588$var$SlowBuffer;\n$51861dfc7ca9d588$export$f99ded8fe4b79145 = 50;\nvar $51861dfc7ca9d588$var$K_MAX_LENGTH = 0x7fffffff;\n$51861dfc7ca9d588$export$599f31c3813fae4d = $51861dfc7ca9d588$var$K_MAX_LENGTH;\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */ $51861dfc7ca9d588$var$Buffer.TYPED_ARRAY_SUPPORT = $51861dfc7ca9d588$var$typedArraySupport();\nif (!$51861dfc7ca9d588$var$Buffer.TYPED_ARRAY_SUPPORT && typeof console !== \"undefined\" && typeof console.error === \"function\") console.error(\"This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.\");\nfunction $51861dfc7ca9d588$var$typedArraySupport() {\n // Can typed array instances can be augmented?\n try {\n var arr = new Uint8Array(1);\n var proto = {\n foo: function() {\n return 42;\n }\n };\n Object.setPrototypeOf(proto, Uint8Array.prototype);\n Object.setPrototypeOf(arr, proto);\n return arr.foo() === 42;\n } catch (e) {\n return false;\n }\n}\nObject.defineProperty($51861dfc7ca9d588$var$Buffer.prototype, \"parent\", {\n enumerable: true,\n get: function() {\n if (!$51861dfc7ca9d588$var$Buffer.isBuffer(this)) return undefined;\n return this.buffer;\n }\n});\nObject.defineProperty($51861dfc7ca9d588$var$Buffer.prototype, \"offset\", {\n enumerable: true,\n get: function() {\n if (!$51861dfc7ca9d588$var$Buffer.isBuffer(this)) return undefined;\n return this.byteOffset;\n }\n});\nfunction $51861dfc7ca9d588$var$createBuffer(length) {\n if (length > $51861dfc7ca9d588$var$K_MAX_LENGTH) throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"');\n // Return an augmented `Uint8Array` instance\n var buf = new Uint8Array(length);\n Object.setPrototypeOf(buf, $51861dfc7ca9d588$var$Buffer.prototype);\n return buf;\n}\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */ function $51861dfc7ca9d588$var$Buffer(arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === \"number\") {\n if (typeof encodingOrOffset === \"string\") throw new TypeError('The \"string\" argument must be of type string. Received type number');\n return $51861dfc7ca9d588$var$allocUnsafe(arg);\n }\n return $51861dfc7ca9d588$var$from(arg, encodingOrOffset, length);\n}\n$51861dfc7ca9d588$var$Buffer.poolSize = 8192 // not used by this implementation\n;\nfunction $51861dfc7ca9d588$var$from(value, encodingOrOffset, length) {\n if (typeof value === \"string\") return $51861dfc7ca9d588$var$fromString(value, encodingOrOffset);\n if (ArrayBuffer.isView(value)) return $51861dfc7ca9d588$var$fromArrayView(value);\n if (value == null) throw new TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \" + typeof value);\n if ($51861dfc7ca9d588$var$isInstance(value, ArrayBuffer) || value && $51861dfc7ca9d588$var$isInstance(value.buffer, ArrayBuffer)) return $51861dfc7ca9d588$var$fromArrayBuffer(value, encodingOrOffset, length);\n if (typeof SharedArrayBuffer !== \"undefined\" && ($51861dfc7ca9d588$var$isInstance(value, SharedArrayBuffer) || value && $51861dfc7ca9d588$var$isInstance(value.buffer, SharedArrayBuffer))) return $51861dfc7ca9d588$var$fromArrayBuffer(value, encodingOrOffset, length);\n if (typeof value === \"number\") throw new TypeError('The \"value\" argument must not be of type number. Received type number');\n var valueOf = value.valueOf && value.valueOf();\n if (valueOf != null && valueOf !== value) return $51861dfc7ca9d588$var$Buffer.from(valueOf, encodingOrOffset, length);\n var b = $51861dfc7ca9d588$var$fromObject(value);\n if (b) return b;\n if (typeof Symbol !== \"undefined\" && Symbol.toPrimitive != null && typeof value[Symbol.toPrimitive] === \"function\") return $51861dfc7ca9d588$var$Buffer.from(value[Symbol.toPrimitive](\"string\"), encodingOrOffset, length);\n throw new TypeError(\"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type \" + typeof value);\n}\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/ $51861dfc7ca9d588$var$Buffer.from = function(value, encodingOrOffset, length) {\n return $51861dfc7ca9d588$var$from(value, encodingOrOffset, length);\n};\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf($51861dfc7ca9d588$var$Buffer.prototype, Uint8Array.prototype);\nObject.setPrototypeOf($51861dfc7ca9d588$var$Buffer, Uint8Array);\nfunction $51861dfc7ca9d588$var$assertSize(size) {\n if (typeof size !== \"number\") throw new TypeError('\"size\" argument must be of type number');\n else if (size < 0) throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"');\n}\nfunction $51861dfc7ca9d588$var$alloc(size, fill, encoding) {\n $51861dfc7ca9d588$var$assertSize(size);\n if (size <= 0) return $51861dfc7ca9d588$var$createBuffer(size);\n if (fill !== undefined) // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === \"string\" ? $51861dfc7ca9d588$var$createBuffer(size).fill(fill, encoding) : $51861dfc7ca9d588$var$createBuffer(size).fill(fill);\n return $51861dfc7ca9d588$var$createBuffer(size);\n}\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/ $51861dfc7ca9d588$var$Buffer.alloc = function(size, fill, encoding) {\n return $51861dfc7ca9d588$var$alloc(size, fill, encoding);\n};\nfunction $51861dfc7ca9d588$var$allocUnsafe(size) {\n $51861dfc7ca9d588$var$assertSize(size);\n return $51861dfc7ca9d588$var$createBuffer(size < 0 ? 0 : $51861dfc7ca9d588$var$checked(size) | 0);\n}\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */ $51861dfc7ca9d588$var$Buffer.allocUnsafe = function(size) {\n return $51861dfc7ca9d588$var$allocUnsafe(size);\n};\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */ $51861dfc7ca9d588$var$Buffer.allocUnsafeSlow = function(size) {\n return $51861dfc7ca9d588$var$allocUnsafe(size);\n};\nfunction $51861dfc7ca9d588$var$fromString(string, encoding) {\n if (typeof encoding !== \"string\" || encoding === \"\") encoding = \"utf8\";\n if (!$51861dfc7ca9d588$var$Buffer.isEncoding(encoding)) throw new TypeError(\"Unknown encoding: \" + encoding);\n var length = $51861dfc7ca9d588$var$byteLength(string, encoding) | 0;\n var buf = $51861dfc7ca9d588$var$createBuffer(length);\n var actual = buf.write(string, encoding);\n if (actual !== length) // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual);\n return buf;\n}\nfunction $51861dfc7ca9d588$var$fromArrayLike(array) {\n var length = array.length < 0 ? 0 : $51861dfc7ca9d588$var$checked(array.length) | 0;\n var buf = $51861dfc7ca9d588$var$createBuffer(length);\n for(var i = 0; i < length; i += 1)buf[i] = array[i] & 255;\n return buf;\n}\nfunction $51861dfc7ca9d588$var$fromArrayView(arrayView) {\n if ($51861dfc7ca9d588$var$isInstance(arrayView, Uint8Array)) {\n var copy = new Uint8Array(arrayView);\n return $51861dfc7ca9d588$var$fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength);\n }\n return $51861dfc7ca9d588$var$fromArrayLike(arrayView);\n}\nfunction $51861dfc7ca9d588$var$fromArrayBuffer(array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) throw new RangeError('\"offset\" is outside of buffer bounds');\n if (array.byteLength < byteOffset + (length || 0)) throw new RangeError('\"length\" is outside of buffer bounds');\n var buf;\n if (byteOffset === undefined && length === undefined) buf = new Uint8Array(array);\n else if (length === undefined) buf = new Uint8Array(array, byteOffset);\n else buf = new Uint8Array(array, byteOffset, length);\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, $51861dfc7ca9d588$var$Buffer.prototype);\n return buf;\n}\nfunction $51861dfc7ca9d588$var$fromObject(obj) {\n if ($51861dfc7ca9d588$var$Buffer.isBuffer(obj)) {\n var len = $51861dfc7ca9d588$var$checked(obj.length) | 0;\n var buf = $51861dfc7ca9d588$var$createBuffer(len);\n if (buf.length === 0) return buf;\n obj.copy(buf, 0, 0, len);\n return buf;\n }\n if (obj.length !== undefined) {\n if (typeof obj.length !== \"number\" || $51861dfc7ca9d588$var$numberIsNaN(obj.length)) return $51861dfc7ca9d588$var$createBuffer(0);\n return $51861dfc7ca9d588$var$fromArrayLike(obj);\n }\n if (obj.type === \"Buffer\" && Array.isArray(obj.data)) return $51861dfc7ca9d588$var$fromArrayLike(obj.data);\n}\nfunction $51861dfc7ca9d588$var$checked(length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= $51861dfc7ca9d588$var$K_MAX_LENGTH) throw new RangeError(\"Attempt to allocate Buffer larger than maximum size: 0x\" + $51861dfc7ca9d588$var$K_MAX_LENGTH.toString(16) + \" bytes\");\n return length | 0;\n}\nfunction $51861dfc7ca9d588$var$SlowBuffer(length) {\n if (+length != length) length = 0;\n return $51861dfc7ca9d588$var$Buffer.alloc(+length);\n}\n$51861dfc7ca9d588$var$Buffer.isBuffer = function isBuffer(b) {\n return b != null && b._isBuffer === true && b !== $51861dfc7ca9d588$var$Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n ;\n};\n$51861dfc7ca9d588$var$Buffer.compare = function compare(a, b) {\n if ($51861dfc7ca9d588$var$isInstance(a, Uint8Array)) a = $51861dfc7ca9d588$var$Buffer.from(a, a.offset, a.byteLength);\n if ($51861dfc7ca9d588$var$isInstance(b, Uint8Array)) b = $51861dfc7ca9d588$var$Buffer.from(b, b.offset, b.byteLength);\n if (!$51861dfc7ca9d588$var$Buffer.isBuffer(a) || !$51861dfc7ca9d588$var$Buffer.isBuffer(b)) throw new TypeError('The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array');\n if (a === b) return 0;\n var x = a.length;\n var y = b.length;\n for(var i = 0, len = Math.min(x, y); i < len; ++i)if (a[i] !== b[i]) {\n x = a[i];\n y = b[i];\n break;\n }\n if (x < y) return -1;\n if (y < x) return 1;\n return 0;\n};\n$51861dfc7ca9d588$var$Buffer.isEncoding = function isEncoding(encoding) {\n switch(String(encoding).toLowerCase()){\n case \"hex\":\n case \"utf8\":\n case \"utf-8\":\n case \"ascii\":\n case \"latin1\":\n case \"binary\":\n case \"base64\":\n case \"ucs2\":\n case \"ucs-2\":\n case \"utf16le\":\n case \"utf-16le\":\n return true;\n default:\n return false;\n }\n};\n$51861dfc7ca9d588$var$Buffer.concat = function concat(list, length) {\n if (!Array.isArray(list)) throw new TypeError('\"list\" argument must be an Array of Buffers');\n if (list.length === 0) return $51861dfc7ca9d588$var$Buffer.alloc(0);\n var i;\n if (length === undefined) {\n length = 0;\n for(i = 0; i < list.length; ++i)length += list[i].length;\n }\n var buffer = $51861dfc7ca9d588$var$Buffer.allocUnsafe(length);\n var pos = 0;\n for(i = 0; i < list.length; ++i){\n var buf = list[i];\n if ($51861dfc7ca9d588$var$isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) $51861dfc7ca9d588$var$Buffer.from(buf).copy(buffer, pos);\n else Uint8Array.prototype.set.call(buffer, buf, pos);\n } else if (!$51861dfc7ca9d588$var$Buffer.isBuffer(buf)) throw new TypeError('\"list\" argument must be an Array of Buffers');\n else buf.copy(buffer, pos);\n pos += buf.length;\n }\n return buffer;\n};\nfunction $51861dfc7ca9d588$var$byteLength(string, encoding) {\n if ($51861dfc7ca9d588$var$Buffer.isBuffer(string)) return string.length;\n if (ArrayBuffer.isView(string) || $51861dfc7ca9d588$var$isInstance(string, ArrayBuffer)) return string.byteLength;\n if (typeof string !== \"string\") throw new TypeError('The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof string);\n var len = string.length;\n var mustMatch = arguments.length > 2 && arguments[2] === true;\n if (!mustMatch && len === 0) return 0;\n // Use a for loop to avoid recursion\n var loweredCase = false;\n for(;;)switch(encoding){\n case \"ascii\":\n case \"latin1\":\n case \"binary\":\n return len;\n case \"utf8\":\n case \"utf-8\":\n return $51861dfc7ca9d588$var$utf8ToBytes(string).length;\n case \"ucs2\":\n case \"ucs-2\":\n case \"utf16le\":\n case \"utf-16le\":\n return len * 2;\n case \"hex\":\n return len >>> 1;\n case \"base64\":\n return $51861dfc7ca9d588$var$base64ToBytes(string).length;\n default:\n if (loweredCase) return mustMatch ? -1 : $51861dfc7ca9d588$var$utf8ToBytes(string).length // assume utf8\n ;\n encoding = (\"\" + encoding).toLowerCase();\n loweredCase = true;\n }\n}\n$51861dfc7ca9d588$var$Buffer.byteLength = $51861dfc7ca9d588$var$byteLength;\nfunction $51861dfc7ca9d588$var$slowToString(encoding, start, end) {\n var loweredCase = false;\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) start = 0;\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) return \"\";\n if (end === undefined || end > this.length) end = this.length;\n if (end <= 0) return \"\";\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0;\n start >>>= 0;\n if (end <= start) return \"\";\n if (!encoding) encoding = \"utf8\";\n while(true)switch(encoding){\n case \"hex\":\n return $51861dfc7ca9d588$var$hexSlice(this, start, end);\n case \"utf8\":\n case \"utf-8\":\n return $51861dfc7ca9d588$var$utf8Slice(this, start, end);\n case \"ascii\":\n return $51861dfc7ca9d588$var$asciiSlice(this, start, end);\n case \"latin1\":\n case \"binary\":\n return $51861dfc7ca9d588$var$latin1Slice(this, start, end);\n case \"base64\":\n return $51861dfc7ca9d588$var$base64Slice(this, start, end);\n case \"ucs2\":\n case \"ucs-2\":\n case \"utf16le\":\n case \"utf-16le\":\n return $51861dfc7ca9d588$var$utf16leSlice(this, start, end);\n default:\n if (loweredCase) throw new TypeError(\"Unknown encoding: \" + encoding);\n encoding = (encoding + \"\").toLowerCase();\n loweredCase = true;\n }\n}\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\n$51861dfc7ca9d588$var$Buffer.prototype._isBuffer = true;\nfunction $51861dfc7ca9d588$var$swap(b, n, m) {\n var i = b[n];\n b[n] = b[m];\n b[m] = i;\n}\n$51861dfc7ca9d588$var$Buffer.prototype.swap16 = function swap16() {\n var len = this.length;\n if (len % 2 !== 0) throw new RangeError(\"Buffer size must be a multiple of 16-bits\");\n for(var i = 0; i < len; i += 2)$51861dfc7ca9d588$var$swap(this, i, i + 1);\n return this;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.swap32 = function swap32() {\n var len = this.length;\n if (len % 4 !== 0) throw new RangeError(\"Buffer size must be a multiple of 32-bits\");\n for(var i = 0; i < len; i += 4){\n $51861dfc7ca9d588$var$swap(this, i, i + 3);\n $51861dfc7ca9d588$var$swap(this, i + 1, i + 2);\n }\n return this;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.swap64 = function swap64() {\n var len = this.length;\n if (len % 8 !== 0) throw new RangeError(\"Buffer size must be a multiple of 64-bits\");\n for(var i = 0; i < len; i += 8){\n $51861dfc7ca9d588$var$swap(this, i, i + 7);\n $51861dfc7ca9d588$var$swap(this, i + 1, i + 6);\n $51861dfc7ca9d588$var$swap(this, i + 2, i + 5);\n $51861dfc7ca9d588$var$swap(this, i + 3, i + 4);\n }\n return this;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.toString = function toString() {\n var length = this.length;\n if (length === 0) return \"\";\n if (arguments.length === 0) return $51861dfc7ca9d588$var$utf8Slice(this, 0, length);\n return $51861dfc7ca9d588$var$slowToString.apply(this, arguments);\n};\n$51861dfc7ca9d588$var$Buffer.prototype.toLocaleString = $51861dfc7ca9d588$var$Buffer.prototype.toString;\n$51861dfc7ca9d588$var$Buffer.prototype.equals = function equals(b) {\n if (!$51861dfc7ca9d588$var$Buffer.isBuffer(b)) throw new TypeError(\"Argument must be a Buffer\");\n if (this === b) return true;\n return $51861dfc7ca9d588$var$Buffer.compare(this, b) === 0;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.inspect = function inspect() {\n var str = \"\";\n var max = $51861dfc7ca9d588$export$f99ded8fe4b79145;\n str = this.toString(\"hex\", 0, max).replace(/(.{2})/g, \"$1 \").trim();\n if (this.length > max) str += \" ... \";\n return \"\";\n};\nif ($51861dfc7ca9d588$var$customInspectSymbol) $51861dfc7ca9d588$var$Buffer.prototype[$51861dfc7ca9d588$var$customInspectSymbol] = $51861dfc7ca9d588$var$Buffer.prototype.inspect;\n$51861dfc7ca9d588$var$Buffer.prototype.compare = function compare(target, start, end, thisStart, thisEnd) {\n if ($51861dfc7ca9d588$var$isInstance(target, Uint8Array)) target = $51861dfc7ca9d588$var$Buffer.from(target, target.offset, target.byteLength);\n if (!$51861dfc7ca9d588$var$Buffer.isBuffer(target)) throw new TypeError('The \"target\" argument must be one of type Buffer or Uint8Array. Received type ' + typeof target);\n if (start === undefined) start = 0;\n if (end === undefined) end = target ? target.length : 0;\n if (thisStart === undefined) thisStart = 0;\n if (thisEnd === undefined) thisEnd = this.length;\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) throw new RangeError(\"out of range index\");\n if (thisStart >= thisEnd && start >= end) return 0;\n if (thisStart >= thisEnd) return -1;\n if (start >= end) return 1;\n start >>>= 0;\n end >>>= 0;\n thisStart >>>= 0;\n thisEnd >>>= 0;\n if (this === target) return 0;\n var x = thisEnd - thisStart;\n var y = end - start;\n var len = Math.min(x, y);\n var thisCopy = this.slice(thisStart, thisEnd);\n var targetCopy = target.slice(start, end);\n for(var i = 0; i < len; ++i)if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i];\n y = targetCopy[i];\n break;\n }\n if (x < y) return -1;\n if (y < x) return 1;\n return 0;\n};\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction $51861dfc7ca9d588$var$bidirectionalIndexOf(buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1;\n // Normalize byteOffset\n if (typeof byteOffset === \"string\") {\n encoding = byteOffset;\n byteOffset = 0;\n } else if (byteOffset > 0x7fffffff) byteOffset = 0x7fffffff;\n else if (byteOffset < -2147483648) byteOffset = -2147483648;\n byteOffset = +byteOffset // Coerce to Number.\n ;\n if ($51861dfc7ca9d588$var$numberIsNaN(byteOffset)) // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : buffer.length - 1;\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset;\n if (byteOffset >= buffer.length) {\n if (dir) return -1;\n else byteOffset = buffer.length - 1;\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0;\n else return -1;\n }\n // Normalize val\n if (typeof val === \"string\") val = $51861dfc7ca9d588$var$Buffer.from(val, encoding);\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if ($51861dfc7ca9d588$var$Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) return -1;\n return $51861dfc7ca9d588$var$arrayIndexOf(buffer, val, byteOffset, encoding, dir);\n } else if (typeof val === \"number\") {\n val = val & 0xFF // Search for a byte value [0-255]\n ;\n if (typeof Uint8Array.prototype.indexOf === \"function\") {\n if (dir) return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset);\n else return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset);\n }\n return $51861dfc7ca9d588$var$arrayIndexOf(buffer, [\n val\n ], byteOffset, encoding, dir);\n }\n throw new TypeError(\"val must be string, number or Buffer\");\n}\nfunction $51861dfc7ca9d588$var$arrayIndexOf(arr, val, byteOffset, encoding, dir) {\n var indexSize = 1;\n var arrLength = arr.length;\n var valLength = val.length;\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase();\n if (encoding === \"ucs2\" || encoding === \"ucs-2\" || encoding === \"utf16le\" || encoding === \"utf-16le\") {\n if (arr.length < 2 || val.length < 2) return -1;\n indexSize = 2;\n arrLength /= 2;\n valLength /= 2;\n byteOffset /= 2;\n }\n }\n function read(buf, i) {\n if (indexSize === 1) return buf[i];\n else return buf.readUInt16BE(i * indexSize);\n }\n var i;\n if (dir) {\n var foundIndex = -1;\n for(i = byteOffset; i < arrLength; i++)if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i;\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize;\n } else {\n if (foundIndex !== -1) i -= i - foundIndex;\n foundIndex = -1;\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength;\n for(i = byteOffset; i >= 0; i--){\n var found = true;\n for(var j = 0; j < valLength; j++)if (read(arr, i + j) !== read(val, j)) {\n found = false;\n break;\n }\n if (found) return i;\n }\n }\n return -1;\n}\n$51861dfc7ca9d588$var$Buffer.prototype.includes = function includes(val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.indexOf = function indexOf(val, byteOffset, encoding) {\n return $51861dfc7ca9d588$var$bidirectionalIndexOf(this, val, byteOffset, encoding, true);\n};\n$51861dfc7ca9d588$var$Buffer.prototype.lastIndexOf = function lastIndexOf(val, byteOffset, encoding) {\n return $51861dfc7ca9d588$var$bidirectionalIndexOf(this, val, byteOffset, encoding, false);\n};\nfunction $51861dfc7ca9d588$var$hexWrite(buf, string, offset, length) {\n offset = Number(offset) || 0;\n var remaining = buf.length - offset;\n if (!length) length = remaining;\n else {\n length = Number(length);\n if (length > remaining) length = remaining;\n }\n var strLen = string.length;\n if (length > strLen / 2) length = strLen / 2;\n for(var i = 0; i < length; ++i){\n var parsed = parseInt(string.substr(i * 2, 2), 16);\n if ($51861dfc7ca9d588$var$numberIsNaN(parsed)) return i;\n buf[offset + i] = parsed;\n }\n return i;\n}\nfunction $51861dfc7ca9d588$var$utf8Write(buf, string, offset, length) {\n return $51861dfc7ca9d588$var$blitBuffer($51861dfc7ca9d588$var$utf8ToBytes(string, buf.length - offset), buf, offset, length);\n}\nfunction $51861dfc7ca9d588$var$asciiWrite(buf, string, offset, length) {\n return $51861dfc7ca9d588$var$blitBuffer($51861dfc7ca9d588$var$asciiToBytes(string), buf, offset, length);\n}\nfunction $51861dfc7ca9d588$var$base64Write(buf, string, offset, length) {\n return $51861dfc7ca9d588$var$blitBuffer($51861dfc7ca9d588$var$base64ToBytes(string), buf, offset, length);\n}\nfunction $51861dfc7ca9d588$var$ucs2Write(buf, string, offset, length) {\n return $51861dfc7ca9d588$var$blitBuffer($51861dfc7ca9d588$var$utf16leToBytes(string, buf.length - offset), buf, offset, length);\n}\n$51861dfc7ca9d588$var$Buffer.prototype.write = function write(string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = \"utf8\";\n length = this.length;\n offset = 0;\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === \"string\") {\n encoding = offset;\n length = this.length;\n offset = 0;\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0;\n if (isFinite(length)) {\n length = length >>> 0;\n if (encoding === undefined) encoding = \"utf8\";\n } else {\n encoding = length;\n length = undefined;\n }\n } else throw new Error(\"Buffer.write(string, encoding, offset[, length]) is no longer supported\");\n var remaining = this.length - offset;\n if (length === undefined || length > remaining) length = remaining;\n if (string.length > 0 && (length < 0 || offset < 0) || offset > this.length) throw new RangeError(\"Attempt to write outside buffer bounds\");\n if (!encoding) encoding = \"utf8\";\n var loweredCase = false;\n for(;;)switch(encoding){\n case \"hex\":\n return $51861dfc7ca9d588$var$hexWrite(this, string, offset, length);\n case \"utf8\":\n case \"utf-8\":\n return $51861dfc7ca9d588$var$utf8Write(this, string, offset, length);\n case \"ascii\":\n case \"latin1\":\n case \"binary\":\n return $51861dfc7ca9d588$var$asciiWrite(this, string, offset, length);\n case \"base64\":\n // Warning: maxLength not taken into account in base64Write\n return $51861dfc7ca9d588$var$base64Write(this, string, offset, length);\n case \"ucs2\":\n case \"ucs-2\":\n case \"utf16le\":\n case \"utf-16le\":\n return $51861dfc7ca9d588$var$ucs2Write(this, string, offset, length);\n default:\n if (loweredCase) throw new TypeError(\"Unknown encoding: \" + encoding);\n encoding = (\"\" + encoding).toLowerCase();\n loweredCase = true;\n }\n};\n$51861dfc7ca9d588$var$Buffer.prototype.toJSON = function toJSON() {\n return {\n type: \"Buffer\",\n data: Array.prototype.slice.call(this._arr || this, 0)\n };\n};\nfunction $51861dfc7ca9d588$var$base64Slice(buf, start, end) {\n if (start === 0 && end === buf.length) return $kuxul.fromByteArray(buf);\n else return $kuxul.fromByteArray(buf.slice(start, end));\n}\nfunction $51861dfc7ca9d588$var$utf8Slice(buf, start, end) {\n end = Math.min(buf.length, end);\n var res = [];\n var i = start;\n while(i < end){\n var firstByte = buf[i];\n var codePoint = null;\n var bytesPerSequence = firstByte > 0xEF ? 4 : firstByte > 0xDF ? 3 : firstByte > 0xBF ? 2 : 1;\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint;\n switch(bytesPerSequence){\n case 1:\n if (firstByte < 0x80) codePoint = firstByte;\n break;\n case 2:\n secondByte = buf[i + 1];\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | secondByte & 0x3F;\n if (tempCodePoint > 0x7F) codePoint = tempCodePoint;\n }\n break;\n case 3:\n secondByte = buf[i + 1];\n thirdByte = buf[i + 2];\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | thirdByte & 0x3F;\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) codePoint = tempCodePoint;\n }\n break;\n case 4:\n secondByte = buf[i + 1];\n thirdByte = buf[i + 2];\n fourthByte = buf[i + 3];\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | fourthByte & 0x3F;\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) codePoint = tempCodePoint;\n }\n }\n }\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD;\n bytesPerSequence = 1;\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000;\n res.push(codePoint >>> 10 & 0x3FF | 0xD800);\n codePoint = 0xDC00 | codePoint & 0x3FF;\n }\n res.push(codePoint);\n i += bytesPerSequence;\n }\n return $51861dfc7ca9d588$var$decodeCodePointsArray(res);\n}\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar $51861dfc7ca9d588$var$MAX_ARGUMENTS_LENGTH = 0x1000;\nfunction $51861dfc7ca9d588$var$decodeCodePointsArray(codePoints) {\n var len = codePoints.length;\n if (len <= $51861dfc7ca9d588$var$MAX_ARGUMENTS_LENGTH) return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n ;\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = \"\";\n var i = 0;\n while(i < len)res += String.fromCharCode.apply(String, codePoints.slice(i, i += $51861dfc7ca9d588$var$MAX_ARGUMENTS_LENGTH));\n return res;\n}\nfunction $51861dfc7ca9d588$var$asciiSlice(buf, start, end) {\n var ret = \"\";\n end = Math.min(buf.length, end);\n for(var i = start; i < end; ++i)ret += String.fromCharCode(buf[i] & 0x7F);\n return ret;\n}\nfunction $51861dfc7ca9d588$var$latin1Slice(buf, start, end) {\n var ret = \"\";\n end = Math.min(buf.length, end);\n for(var i = start; i < end; ++i)ret += String.fromCharCode(buf[i]);\n return ret;\n}\nfunction $51861dfc7ca9d588$var$hexSlice(buf, start, end) {\n var len = buf.length;\n if (!start || start < 0) start = 0;\n if (!end || end < 0 || end > len) end = len;\n var out = \"\";\n for(var i = start; i < end; ++i)out += $51861dfc7ca9d588$var$hexSliceLookupTable[buf[i]];\n return out;\n}\nfunction $51861dfc7ca9d588$var$utf16leSlice(buf, start, end) {\n var bytes = buf.slice(start, end);\n var res = \"\";\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for(var i = 0; i < bytes.length - 1; i += 2)res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256);\n return res;\n}\n$51861dfc7ca9d588$var$Buffer.prototype.slice = function slice(start, end) {\n var len = this.length;\n start = ~~start;\n end = end === undefined ? len : ~~end;\n if (start < 0) {\n start += len;\n if (start < 0) start = 0;\n } else if (start > len) start = len;\n if (end < 0) {\n end += len;\n if (end < 0) end = 0;\n } else if (end > len) end = len;\n if (end < start) end = start;\n var newBuf = this.subarray(start, end);\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, $51861dfc7ca9d588$var$Buffer.prototype);\n return newBuf;\n};\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */ function $51861dfc7ca9d588$var$checkOffset(offset, ext, length) {\n if (offset % 1 !== 0 || offset < 0) throw new RangeError(\"offset is not uint\");\n if (offset + ext > length) throw new RangeError(\"Trying to access beyond buffer length\");\n}\n$51861dfc7ca9d588$var$Buffer.prototype.readUintLE = $51861dfc7ca9d588$var$Buffer.prototype.readUIntLE = function readUIntLE(offset, byteLength, noAssert) {\n offset = offset >>> 0;\n byteLength = byteLength >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, byteLength, this.length);\n var val = this[offset];\n var mul = 1;\n var i = 0;\n while(++i < byteLength && (mul *= 0x100))val += this[offset + i] * mul;\n return val;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readUintBE = $51861dfc7ca9d588$var$Buffer.prototype.readUIntBE = function readUIntBE(offset, byteLength, noAssert) {\n offset = offset >>> 0;\n byteLength = byteLength >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, byteLength, this.length);\n var val = this[offset + --byteLength];\n var mul = 1;\n while(byteLength > 0 && (mul *= 0x100))val += this[offset + --byteLength] * mul;\n return val;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readUint8 = $51861dfc7ca9d588$var$Buffer.prototype.readUInt8 = function readUInt8(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 1, this.length);\n return this[offset];\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readUint16LE = $51861dfc7ca9d588$var$Buffer.prototype.readUInt16LE = function readUInt16LE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 2, this.length);\n return this[offset] | this[offset + 1] << 8;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readUint16BE = $51861dfc7ca9d588$var$Buffer.prototype.readUInt16BE = function readUInt16BE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 2, this.length);\n return this[offset] << 8 | this[offset + 1];\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readUint32LE = $51861dfc7ca9d588$var$Buffer.prototype.readUInt32LE = function readUInt32LE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 4, this.length);\n return (this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16) + this[offset + 3] * 0x1000000;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readUint32BE = $51861dfc7ca9d588$var$Buffer.prototype.readUInt32BE = function readUInt32BE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 4, this.length);\n return this[offset] * 0x1000000 + (this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3]);\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readIntLE = function readIntLE(offset, byteLength, noAssert) {\n offset = offset >>> 0;\n byteLength = byteLength >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, byteLength, this.length);\n var val = this[offset];\n var mul = 1;\n var i = 0;\n while(++i < byteLength && (mul *= 0x100))val += this[offset + i] * mul;\n mul *= 0x80;\n if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n return val;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readIntBE = function readIntBE(offset, byteLength, noAssert) {\n offset = offset >>> 0;\n byteLength = byteLength >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, byteLength, this.length);\n var i = byteLength;\n var mul = 1;\n var val = this[offset + --i];\n while(i > 0 && (mul *= 0x100))val += this[offset + --i] * mul;\n mul *= 0x80;\n if (val >= mul) val -= Math.pow(2, 8 * byteLength);\n return val;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readInt8 = function readInt8(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 1, this.length);\n if (!(this[offset] & 0x80)) return this[offset];\n return (0xff - this[offset] + 1) * -1;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readInt16LE = function readInt16LE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 2, this.length);\n var val = this[offset] | this[offset + 1] << 8;\n return val & 0x8000 ? val | 0xFFFF0000 : val;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readInt16BE = function readInt16BE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 2, this.length);\n var val = this[offset + 1] | this[offset] << 8;\n return val & 0x8000 ? val | 0xFFFF0000 : val;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readInt32LE = function readInt32LE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 4, this.length);\n return this[offset] | this[offset + 1] << 8 | this[offset + 2] << 16 | this[offset + 3] << 24;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readInt32BE = function readInt32BE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 4, this.length);\n return this[offset] << 24 | this[offset + 1] << 16 | this[offset + 2] << 8 | this[offset + 3];\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readFloatLE = function readFloatLE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 4, this.length);\n return $9NvM5.read(this, offset, true, 23, 4);\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readFloatBE = function readFloatBE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 4, this.length);\n return $9NvM5.read(this, offset, false, 23, 4);\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readDoubleLE = function readDoubleLE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 8, this.length);\n return $9NvM5.read(this, offset, true, 52, 8);\n};\n$51861dfc7ca9d588$var$Buffer.prototype.readDoubleBE = function readDoubleBE(offset, noAssert) {\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkOffset(offset, 8, this.length);\n return $9NvM5.read(this, offset, false, 52, 8);\n};\nfunction $51861dfc7ca9d588$var$checkInt(buf, value, offset, ext, max, min) {\n if (!$51861dfc7ca9d588$var$Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance');\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds');\n if (offset + ext > buf.length) throw new RangeError(\"Index out of range\");\n}\n$51861dfc7ca9d588$var$Buffer.prototype.writeUintLE = $51861dfc7ca9d588$var$Buffer.prototype.writeUIntLE = function writeUIntLE(value, offset, byteLength, noAssert) {\n value = +value;\n offset = offset >>> 0;\n byteLength = byteLength >>> 0;\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1;\n $51861dfc7ca9d588$var$checkInt(this, value, offset, byteLength, maxBytes, 0);\n }\n var mul = 1;\n var i = 0;\n this[offset] = value & 0xFF;\n while(++i < byteLength && (mul *= 0x100))this[offset + i] = value / mul & 0xFF;\n return offset + byteLength;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeUintBE = $51861dfc7ca9d588$var$Buffer.prototype.writeUIntBE = function writeUIntBE(value, offset, byteLength, noAssert) {\n value = +value;\n offset = offset >>> 0;\n byteLength = byteLength >>> 0;\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1;\n $51861dfc7ca9d588$var$checkInt(this, value, offset, byteLength, maxBytes, 0);\n }\n var i = byteLength - 1;\n var mul = 1;\n this[offset + i] = value & 0xFF;\n while(--i >= 0 && (mul *= 0x100))this[offset + i] = value / mul & 0xFF;\n return offset + byteLength;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeUint8 = $51861dfc7ca9d588$var$Buffer.prototype.writeUInt8 = function writeUInt8(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkInt(this, value, offset, 1, 0xff, 0);\n this[offset] = value & 0xff;\n return offset + 1;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeUint16LE = $51861dfc7ca9d588$var$Buffer.prototype.writeUInt16LE = function writeUInt16LE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkInt(this, value, offset, 2, 0xffff, 0);\n this[offset] = value & 0xff;\n this[offset + 1] = value >>> 8;\n return offset + 2;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeUint16BE = $51861dfc7ca9d588$var$Buffer.prototype.writeUInt16BE = function writeUInt16BE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkInt(this, value, offset, 2, 0xffff, 0);\n this[offset] = value >>> 8;\n this[offset + 1] = value & 0xff;\n return offset + 2;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeUint32LE = $51861dfc7ca9d588$var$Buffer.prototype.writeUInt32LE = function writeUInt32LE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkInt(this, value, offset, 4, 0xffffffff, 0);\n this[offset + 3] = value >>> 24;\n this[offset + 2] = value >>> 16;\n this[offset + 1] = value >>> 8;\n this[offset] = value & 0xff;\n return offset + 4;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeUint32BE = $51861dfc7ca9d588$var$Buffer.prototype.writeUInt32BE = function writeUInt32BE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkInt(this, value, offset, 4, 0xffffffff, 0);\n this[offset] = value >>> 24;\n this[offset + 1] = value >>> 16;\n this[offset + 2] = value >>> 8;\n this[offset + 3] = value & 0xff;\n return offset + 4;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeIntLE = function writeIntLE(value, offset, byteLength, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1);\n $51861dfc7ca9d588$var$checkInt(this, value, offset, byteLength, limit - 1, -limit);\n }\n var i = 0;\n var mul = 1;\n var sub = 0;\n this[offset] = value & 0xFF;\n while(++i < byteLength && (mul *= 0x100)){\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) sub = 1;\n this[offset + i] = (value / mul >> 0) - sub & 0xFF;\n }\n return offset + byteLength;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeIntBE = function writeIntBE(value, offset, byteLength, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1);\n $51861dfc7ca9d588$var$checkInt(this, value, offset, byteLength, limit - 1, -limit);\n }\n var i = byteLength - 1;\n var mul = 1;\n var sub = 0;\n this[offset + i] = value & 0xFF;\n while(--i >= 0 && (mul *= 0x100)){\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) sub = 1;\n this[offset + i] = (value / mul >> 0) - sub & 0xFF;\n }\n return offset + byteLength;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeInt8 = function writeInt8(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkInt(this, value, offset, 1, 0x7f, -128);\n if (value < 0) value = 0xff + value + 1;\n this[offset] = value & 0xff;\n return offset + 1;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeInt16LE = function writeInt16LE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkInt(this, value, offset, 2, 0x7fff, -32768);\n this[offset] = value & 0xff;\n this[offset + 1] = value >>> 8;\n return offset + 2;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeInt16BE = function writeInt16BE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkInt(this, value, offset, 2, 0x7fff, -32768);\n this[offset] = value >>> 8;\n this[offset + 1] = value & 0xff;\n return offset + 2;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeInt32LE = function writeInt32LE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkInt(this, value, offset, 4, 0x7fffffff, -2147483648);\n this[offset] = value & 0xff;\n this[offset + 1] = value >>> 8;\n this[offset + 2] = value >>> 16;\n this[offset + 3] = value >>> 24;\n return offset + 4;\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeInt32BE = function writeInt32BE(value, offset, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkInt(this, value, offset, 4, 0x7fffffff, -2147483648);\n if (value < 0) value = 0xffffffff + value + 1;\n this[offset] = value >>> 24;\n this[offset + 1] = value >>> 16;\n this[offset + 2] = value >>> 8;\n this[offset + 3] = value & 0xff;\n return offset + 4;\n};\nfunction $51861dfc7ca9d588$var$checkIEEE754(buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError(\"Index out of range\");\n if (offset < 0) throw new RangeError(\"Index out of range\");\n}\nfunction $51861dfc7ca9d588$var$writeFloat(buf, value, offset, littleEndian, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -340282346638528860000000000000000000000);\n $9NvM5.write(buf, value, offset, littleEndian, 23, 4);\n return offset + 4;\n}\n$51861dfc7ca9d588$var$Buffer.prototype.writeFloatLE = function writeFloatLE(value, offset, noAssert) {\n return $51861dfc7ca9d588$var$writeFloat(this, value, offset, true, noAssert);\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeFloatBE = function writeFloatBE(value, offset, noAssert) {\n return $51861dfc7ca9d588$var$writeFloat(this, value, offset, false, noAssert);\n};\nfunction $51861dfc7ca9d588$var$writeDouble(buf, value, offset, littleEndian, noAssert) {\n value = +value;\n offset = offset >>> 0;\n if (!noAssert) $51861dfc7ca9d588$var$checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -179769313486231570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000);\n $9NvM5.write(buf, value, offset, littleEndian, 52, 8);\n return offset + 8;\n}\n$51861dfc7ca9d588$var$Buffer.prototype.writeDoubleLE = function writeDoubleLE(value, offset, noAssert) {\n return $51861dfc7ca9d588$var$writeDouble(this, value, offset, true, noAssert);\n};\n$51861dfc7ca9d588$var$Buffer.prototype.writeDoubleBE = function writeDoubleBE(value, offset, noAssert) {\n return $51861dfc7ca9d588$var$writeDouble(this, value, offset, false, noAssert);\n};\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\n$51861dfc7ca9d588$var$Buffer.prototype.copy = function copy(target, targetStart, start, end) {\n if (!$51861dfc7ca9d588$var$Buffer.isBuffer(target)) throw new TypeError(\"argument should be a Buffer\");\n if (!start) start = 0;\n if (!end && end !== 0) end = this.length;\n if (targetStart >= target.length) targetStart = target.length;\n if (!targetStart) targetStart = 0;\n if (end > 0 && end < start) end = start;\n // Copy 0 bytes; we're done\n if (end === start) return 0;\n if (target.length === 0 || this.length === 0) return 0;\n // Fatal error conditions\n if (targetStart < 0) throw new RangeError(\"targetStart out of bounds\");\n if (start < 0 || start >= this.length) throw new RangeError(\"Index out of range\");\n if (end < 0) throw new RangeError(\"sourceEnd out of bounds\");\n // Are we oob?\n if (end > this.length) end = this.length;\n if (target.length - targetStart < end - start) end = target.length - targetStart + start;\n var len = end - start;\n if (this === target && typeof Uint8Array.prototype.copyWithin === \"function\") // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end);\n else Uint8Array.prototype.set.call(target, this.subarray(start, end), targetStart);\n return len;\n};\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\n$51861dfc7ca9d588$var$Buffer.prototype.fill = function fill(val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === \"string\") {\n if (typeof start === \"string\") {\n encoding = start;\n start = 0;\n end = this.length;\n } else if (typeof end === \"string\") {\n encoding = end;\n end = this.length;\n }\n if (encoding !== undefined && typeof encoding !== \"string\") throw new TypeError(\"encoding must be a string\");\n if (typeof encoding === \"string\" && !$51861dfc7ca9d588$var$Buffer.isEncoding(encoding)) throw new TypeError(\"Unknown encoding: \" + encoding);\n if (val.length === 1) {\n var code = val.charCodeAt(0);\n if (encoding === \"utf8\" && code < 128 || encoding === \"latin1\") // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code;\n }\n } else if (typeof val === \"number\") val = val & 255;\n else if (typeof val === \"boolean\") val = Number(val);\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) throw new RangeError(\"Out of range index\");\n if (end <= start) return this;\n start = start >>> 0;\n end = end === undefined ? this.length : end >>> 0;\n if (!val) val = 0;\n var i;\n if (typeof val === \"number\") for(i = start; i < end; ++i)this[i] = val;\n else {\n var bytes = $51861dfc7ca9d588$var$Buffer.isBuffer(val) ? val : $51861dfc7ca9d588$var$Buffer.from(val, encoding);\n var len = bytes.length;\n if (len === 0) throw new TypeError('The value \"' + val + '\" is invalid for argument \"value\"');\n for(i = 0; i < end - start; ++i)this[i + start] = bytes[i % len];\n }\n return this;\n};\n// HELPER FUNCTIONS\n// ================\nvar $51861dfc7ca9d588$var$INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g;\nfunction $51861dfc7ca9d588$var$base64clean(str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split(\"=\")[0];\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace($51861dfc7ca9d588$var$INVALID_BASE64_RE, \"\");\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return \"\";\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while(str.length % 4 !== 0)str = str + \"=\";\n return str;\n}\nfunction $51861dfc7ca9d588$var$utf8ToBytes(string, units) {\n units = units || Infinity;\n var codePoint;\n var length = string.length;\n var leadSurrogate = null;\n var bytes = [];\n for(var i = 0; i < length; ++i){\n codePoint = string.charCodeAt(i);\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n continue;\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n continue;\n }\n // valid lead\n leadSurrogate = codePoint;\n continue;\n }\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n leadSurrogate = codePoint;\n continue;\n }\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000;\n } else if (leadSurrogate) // valid bmp char, but last char was a lead\n {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD);\n }\n leadSurrogate = null;\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break;\n bytes.push(codePoint);\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break;\n bytes.push(codePoint >> 0x6 | 0xC0, codePoint & 0x3F | 0x80);\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break;\n bytes.push(codePoint >> 0xC | 0xE0, codePoint >> 0x6 & 0x3F | 0x80, codePoint & 0x3F | 0x80);\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break;\n bytes.push(codePoint >> 0x12 | 0xF0, codePoint >> 0xC & 0x3F | 0x80, codePoint >> 0x6 & 0x3F | 0x80, codePoint & 0x3F | 0x80);\n } else throw new Error(\"Invalid code point\");\n }\n return bytes;\n}\nfunction $51861dfc7ca9d588$var$asciiToBytes(str) {\n var byteArray = [];\n for(var i = 0; i < str.length; ++i)// Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF);\n return byteArray;\n}\nfunction $51861dfc7ca9d588$var$utf16leToBytes(str, units) {\n var c, hi, lo;\n var byteArray = [];\n for(var i = 0; i < str.length; ++i){\n if ((units -= 2) < 0) break;\n c = str.charCodeAt(i);\n hi = c >> 8;\n lo = c % 256;\n byteArray.push(lo);\n byteArray.push(hi);\n }\n return byteArray;\n}\nfunction $51861dfc7ca9d588$var$base64ToBytes(str) {\n return $kuxul.toByteArray($51861dfc7ca9d588$var$base64clean(str));\n}\nfunction $51861dfc7ca9d588$var$blitBuffer(src, dst, offset, length) {\n for(var i = 0; i < length; ++i){\n if (i + offset >= dst.length || i >= src.length) break;\n dst[i + offset] = src[i];\n }\n return i;\n}\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction $51861dfc7ca9d588$var$isInstance(obj, type) {\n return obj instanceof type || obj != null && obj.constructor != null && obj.constructor.name != null && obj.constructor.name === type.name;\n}\nfunction $51861dfc7ca9d588$var$numberIsNaN(obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n ;\n}\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nvar $51861dfc7ca9d588$var$hexSliceLookupTable = function() {\n var alphabet = \"0123456789abcdef\";\n var table = new Array(256);\n for(var i = 0; i < 16; ++i){\n var i16 = i * 16;\n for(var j = 0; j < 16; ++j)table[i16 + j] = alphabet[i] + alphabet[j];\n }\n return table;\n}();\n\n});\nparcelRegister(\"kuxul\", function(module, exports) {\n\n$parcel$export(module.exports, \"toByteArray\", () => $eeb0961446aae8e3$export$d622b2ad8d90c771, (v) => $eeb0961446aae8e3$export$d622b2ad8d90c771 = v);\n$parcel$export(module.exports, \"fromByteArray\", () => $eeb0961446aae8e3$export$6100ba28696e12de, (v) => $eeb0961446aae8e3$export$6100ba28696e12de = v);\nvar $eeb0961446aae8e3$export$a48f0734ac7c2329;\nvar $eeb0961446aae8e3$export$d622b2ad8d90c771;\nvar $eeb0961446aae8e3$export$6100ba28696e12de;\n\"use strict\";\n$eeb0961446aae8e3$export$a48f0734ac7c2329 = $eeb0961446aae8e3$var$byteLength;\n$eeb0961446aae8e3$export$d622b2ad8d90c771 = $eeb0961446aae8e3$var$toByteArray;\n$eeb0961446aae8e3$export$6100ba28696e12de = $eeb0961446aae8e3$var$fromByteArray;\nvar $eeb0961446aae8e3$var$lookup = [];\nvar $eeb0961446aae8e3$var$revLookup = [];\nvar $eeb0961446aae8e3$var$Arr = typeof Uint8Array !== \"undefined\" ? Uint8Array : Array;\nvar $eeb0961446aae8e3$var$code = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nfor(var $eeb0961446aae8e3$var$i = 0, $eeb0961446aae8e3$var$len = $eeb0961446aae8e3$var$code.length; $eeb0961446aae8e3$var$i < $eeb0961446aae8e3$var$len; ++$eeb0961446aae8e3$var$i){\n $eeb0961446aae8e3$var$lookup[$eeb0961446aae8e3$var$i] = $eeb0961446aae8e3$var$code[$eeb0961446aae8e3$var$i];\n $eeb0961446aae8e3$var$revLookup[$eeb0961446aae8e3$var$code.charCodeAt($eeb0961446aae8e3$var$i)] = $eeb0961446aae8e3$var$i;\n}\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\n$eeb0961446aae8e3$var$revLookup[\"-\".charCodeAt(0)] = 62;\n$eeb0961446aae8e3$var$revLookup[\"_\".charCodeAt(0)] = 63;\nfunction $eeb0961446aae8e3$var$getLens(b64) {\n var len = b64.length;\n if (len % 4 > 0) throw new Error(\"Invalid string. Length must be a multiple of 4\");\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf(\"=\");\n if (validLen === -1) validLen = len;\n var placeHoldersLen = validLen === len ? 0 : 4 - validLen % 4;\n return [\n validLen,\n placeHoldersLen\n ];\n}\n// base64 is 4/3 + up to two characters of the original data\nfunction $eeb0961446aae8e3$var$byteLength(b64) {\n var lens = $eeb0961446aae8e3$var$getLens(b64);\n var validLen = lens[0];\n var placeHoldersLen = lens[1];\n return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen;\n}\nfunction $eeb0961446aae8e3$var$_byteLength(b64, validLen, placeHoldersLen) {\n return (validLen + placeHoldersLen) * 3 / 4 - placeHoldersLen;\n}\nfunction $eeb0961446aae8e3$var$toByteArray(b64) {\n var tmp;\n var lens = $eeb0961446aae8e3$var$getLens(b64);\n var validLen = lens[0];\n var placeHoldersLen = lens[1];\n var arr = new $eeb0961446aae8e3$var$Arr($eeb0961446aae8e3$var$_byteLength(b64, validLen, placeHoldersLen));\n var curByte = 0;\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0 ? validLen - 4 : validLen;\n var i;\n for(i = 0; i < len; i += 4){\n tmp = $eeb0961446aae8e3$var$revLookup[b64.charCodeAt(i)] << 18 | $eeb0961446aae8e3$var$revLookup[b64.charCodeAt(i + 1)] << 12 | $eeb0961446aae8e3$var$revLookup[b64.charCodeAt(i + 2)] << 6 | $eeb0961446aae8e3$var$revLookup[b64.charCodeAt(i + 3)];\n arr[curByte++] = tmp >> 16 & 0xFF;\n arr[curByte++] = tmp >> 8 & 0xFF;\n arr[curByte++] = tmp & 0xFF;\n }\n if (placeHoldersLen === 2) {\n tmp = $eeb0961446aae8e3$var$revLookup[b64.charCodeAt(i)] << 2 | $eeb0961446aae8e3$var$revLookup[b64.charCodeAt(i + 1)] >> 4;\n arr[curByte++] = tmp & 0xFF;\n }\n if (placeHoldersLen === 1) {\n tmp = $eeb0961446aae8e3$var$revLookup[b64.charCodeAt(i)] << 10 | $eeb0961446aae8e3$var$revLookup[b64.charCodeAt(i + 1)] << 4 | $eeb0961446aae8e3$var$revLookup[b64.charCodeAt(i + 2)] >> 2;\n arr[curByte++] = tmp >> 8 & 0xFF;\n arr[curByte++] = tmp & 0xFF;\n }\n return arr;\n}\nfunction $eeb0961446aae8e3$var$tripletToBase64(num) {\n return $eeb0961446aae8e3$var$lookup[num >> 18 & 0x3F] + $eeb0961446aae8e3$var$lookup[num >> 12 & 0x3F] + $eeb0961446aae8e3$var$lookup[num >> 6 & 0x3F] + $eeb0961446aae8e3$var$lookup[num & 0x3F];\n}\nfunction $eeb0961446aae8e3$var$encodeChunk(uint8, start, end) {\n var tmp;\n var output = [];\n for(var i = start; i < end; i += 3){\n tmp = (uint8[i] << 16 & 0xFF0000) + (uint8[i + 1] << 8 & 0xFF00) + (uint8[i + 2] & 0xFF);\n output.push($eeb0961446aae8e3$var$tripletToBase64(tmp));\n }\n return output.join(\"\");\n}\nfunction $eeb0961446aae8e3$var$fromByteArray(uint8) {\n var tmp;\n var len = uint8.length;\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n ;\n var parts = [];\n var maxChunkLength = 16383 // must be multiple of 3\n ;\n // go through the array every three bytes, we'll deal with trailing stuff later\n for(var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength)parts.push($eeb0961446aae8e3$var$encodeChunk(uint8, i, i + maxChunkLength > len2 ? len2 : i + maxChunkLength));\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1];\n parts.push($eeb0961446aae8e3$var$lookup[tmp >> 2] + $eeb0961446aae8e3$var$lookup[tmp << 4 & 0x3F] + \"==\");\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1];\n parts.push($eeb0961446aae8e3$var$lookup[tmp >> 10] + $eeb0961446aae8e3$var$lookup[tmp >> 4 & 0x3F] + $eeb0961446aae8e3$var$lookup[tmp << 2 & 0x3F] + \"=\");\n }\n return parts.join(\"\");\n}\n\n});\n\nparcelRegister(\"9NvM5\", function(module, exports) {\n\n$parcel$export(module.exports, \"read\", () => $7221566bd4d49f44$export$aafa59e2e03f2942, (v) => $7221566bd4d49f44$export$aafa59e2e03f2942 = v);\n$parcel$export(module.exports, \"write\", () => $7221566bd4d49f44$export$68d8715fc104d294, (v) => $7221566bd4d49f44$export$68d8715fc104d294 = v);\n/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */ var $7221566bd4d49f44$export$aafa59e2e03f2942;\nvar $7221566bd4d49f44$export$68d8715fc104d294;\n$7221566bd4d49f44$export$aafa59e2e03f2942 = function(buffer, offset, isLE, mLen, nBytes) {\n var e, m;\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var nBits = -7;\n var i = isLE ? nBytes - 1 : 0;\n var d = isLE ? -1 : 1;\n var s = buffer[offset + i];\n i += d;\n e = s & (1 << -nBits) - 1;\n s >>= -nBits;\n nBits += eLen;\n for(; nBits > 0; e = e * 256 + buffer[offset + i], i += d, nBits -= 8);\n m = e & (1 << -nBits) - 1;\n e >>= -nBits;\n nBits += mLen;\n for(; nBits > 0; m = m * 256 + buffer[offset + i], i += d, nBits -= 8);\n if (e === 0) e = 1 - eBias;\n else if (e === eMax) return m ? NaN : (s ? -1 : 1) * Infinity;\n else {\n m = m + Math.pow(2, mLen);\n e = e - eBias;\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen);\n};\n$7221566bd4d49f44$export$68d8715fc104d294 = function(buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c;\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var rt = mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0;\n var i = isLE ? 0 : nBytes - 1;\n var d = isLE ? 1 : -1;\n var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0;\n value = Math.abs(value);\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0;\n e = eMax;\n } else {\n e = Math.floor(Math.log(value) / Math.LN2);\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--;\n c *= 2;\n }\n if (e + eBias >= 1) value += rt / c;\n else value += rt * Math.pow(2, 1 - eBias);\n if (value * c >= 2) {\n e++;\n c /= 2;\n }\n if (e + eBias >= eMax) {\n m = 0;\n e = eMax;\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * Math.pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen);\n e = 0;\n }\n }\n for(; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8);\n e = e << mLen | m;\n eLen += mLen;\n for(; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8);\n buffer[offset + i - d] |= s * 128;\n};\n\n});\n\n\n\nparcelRegister(\"ZB00P\", function(module, exports) {\n\n$parcel$export(module.exports, \"isEmptyData\", () => $0b9265e3f06832e9$export$ea55f474a468804e);\n// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $0b9265e3f06832e9$export$ea55f474a468804e(data) {\n if (typeof data === \"string\") return data.length === 0;\n return data.byteLength === 0;\n}\n\n});\n\nparcelRegister(\"aecxA\", function(module, exports) {\n// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $7724f0827d728d87$export$2527dfa2a193fcfa(num) {\n return new Uint8Array([\n (num & 0xff000000) >> 24,\n (num & 0x00ff0000) >> 16,\n (num & 0x0000ff00) >> 8,\n num & 0x000000ff\n ]);\n}\n\n});\n\nparcelRegister(\"kjfFh\", function(module, exports) {\n// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// IE 11 does not support Array.from, so we do it manually\nfunction $ec91bbb6f0039d68$export$b6739cd5a63159f9(a_lookUpTable) {\n if (!Uint32Array.from) {\n var return_array = new Uint32Array(a_lookUpTable.length);\n var a_index = 0;\n while(a_index < a_lookUpTable.length){\n return_array[a_index] = a_lookUpTable[a_index];\n a_index += 1;\n }\n return return_array;\n }\n return Uint32Array.from(a_lookUpTable);\n}\n\n});\n\n\n\n\nparcelRegister(\"lUOK3\", function(module, exports) {\n\n$parcel$export(module.exports, \"toHex\", () => $ff463032e6a14a0a$export$7ea66e3774a60b67);\nconst $ff463032e6a14a0a$var$SHORT_TO_HEX = {};\nconst $ff463032e6a14a0a$var$HEX_TO_SHORT = {};\nfor(let i = 0; i < 256; i++){\n let encodedByte = i.toString(16).toLowerCase();\n if (encodedByte.length === 1) encodedByte = `0${encodedByte}`;\n $ff463032e6a14a0a$var$SHORT_TO_HEX[i] = encodedByte;\n $ff463032e6a14a0a$var$HEX_TO_SHORT[encodedByte] = i;\n}\nfunction $ff463032e6a14a0a$export$1a8ceedbd5845648(encoded) {\n if (encoded.length % 2 !== 0) throw new Error(\"Hex encoded strings must have an even number length\");\n const out = new Uint8Array(encoded.length / 2);\n for(let i = 0; i < encoded.length; i += 2){\n const encodedByte = encoded.slice(i, i + 2).toLowerCase();\n if (encodedByte in $ff463032e6a14a0a$var$HEX_TO_SHORT) out[i / 2] = $ff463032e6a14a0a$var$HEX_TO_SHORT[encodedByte];\n else throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n return out;\n}\nfunction $ff463032e6a14a0a$export$7ea66e3774a60b67(bytes) {\n let out = \"\";\n for(let i = 0; i < bytes.byteLength; i++)out += $ff463032e6a14a0a$var$SHORT_TO_HEX[bytes[i]];\n return out;\n}\n\n});\n\nparcelRegister(\"7Ar4G\", function(module, exports) {\n\n$parcel$export(module.exports, \"AmplifyUrl\", () => $69ea4819ac006867$export$beb82d9d9136c16e);\n$parcel$export(module.exports, \"AmplifyUrlSearchParams\", () => $69ea4819ac006867$export$4ea7bbdac595b5fb);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $69ea4819ac006867$export$beb82d9d9136c16e = URL;\nconst $69ea4819ac006867$export$4ea7bbdac595b5fb = URLSearchParams;\n\n});\n\nparcelRegister(\"bM38a\", function(module, exports) {\n\n$parcel$export(module.exports, \"parseJsonError\", () => $79d947bf5668e8ed$export$be467dfcc0538e25);\n$parcel$export(module.exports, \"parseJsonBody\", () => $79d947bf5668e8ed$export$759bcb35b0d1bf81);\n\nvar $7ecIZ = parcelRequire(\"7ecIZ\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Utility functions for serializing and deserializing of JSON protocol in general(including: REST-JSON, JSON-RPC, etc.)\n */ /**\n * Error parser for AWS JSON protocol.\n */ const $79d947bf5668e8ed$export$be467dfcc0538e25 = async (response)=>{\n if (!response || response.statusCode < 300) return;\n const body = await $79d947bf5668e8ed$export$759bcb35b0d1bf81(response);\n const sanitizeErrorCode = (rawValue)=>{\n const [cleanValue] = rawValue.toString().split(/[\\,\\:]+/);\n if (cleanValue.includes(\"#\")) return cleanValue.split(\"#\")[1];\n return cleanValue;\n };\n const code = sanitizeErrorCode(response.headers[\"x-amzn-errortype\"] ?? body.code ?? body.__type ?? \"UnknownError\");\n const message = body.message ?? body.Message ?? \"Unknown error\";\n const error = new Error(message);\n return Object.assign(error, {\n name: code,\n $metadata: (0, $7ecIZ.parseMetadata)(response)\n });\n};\n/**\n * Parse JSON response body to JavaScript object.\n */ const $79d947bf5668e8ed$export$759bcb35b0d1bf81 = async (response)=>{\n if (!response.body) throw new Error(\"Missing response payload\");\n const output = await response.body.json();\n return Object.assign(output, {\n $metadata: (0, $7ecIZ.parseMetadata)(response)\n });\n};\n\n});\nparcelRegister(\"7ecIZ\", function(module, exports) {\n\n$parcel$export(module.exports, \"parseMetadata\", () => $f4d14d043a6280d5$export$978f9418fe0cb26c);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $f4d14d043a6280d5$export$978f9418fe0cb26c = (response)=>{\n const { headers: headers, statusCode: statusCode } = response;\n return {\n ...$f4d14d043a6280d5$var$isMetadataBearer(response) ? response.$metadata : {},\n httpStatusCode: statusCode,\n requestId: headers[\"x-amzn-requestid\"] ?? headers[\"x-amzn-request-id\"] ?? headers[\"x-amz-request-id\"],\n extendedRequestId: headers[\"x-amz-id-2\"],\n cfId: headers[\"x-amz-cf-id\"]\n };\n};\nconst $f4d14d043a6280d5$var$isMetadataBearer = (response)=>typeof response?.$metadata === \"object\";\n\n});\n\n\nparcelRegister(\"dj9FS\", function(module, exports) {\n\n$parcel$export(module.exports, \"getAmplifyUserAgent\", () => $a3c63f83cda4eabf$export$ede38edb26c0bfdf);\n\nvar $k2DuP = parcelRequire(\"k2DuP\");\n\nvar $bJXer = parcelRequire(\"bJXer\");\n\nvar $iHOzP = parcelRequire(\"iHOzP\");\n\nvar $lA3xE = parcelRequire(\"lA3xE\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $a3c63f83cda4eabf$var$BASE_USER_AGENT = `aws-amplify`;\nclass $a3c63f83cda4eabf$var$PlatformBuilder {\n constructor(){\n this.userAgent = `${$a3c63f83cda4eabf$var$BASE_USER_AGENT}/${0, $bJXer.version}`;\n }\n get framework() {\n return (0, $iHOzP.detectFramework)();\n }\n get isReactNative() {\n return this.framework === (0, $k2DuP.Framework).ReactNative || this.framework === (0, $k2DuP.Framework).Expo;\n }\n observeFrameworkChanges(fcn) {\n (0, $iHOzP.observeFrameworkChanges)(fcn);\n }\n}\nconst $a3c63f83cda4eabf$export$2dffd0b5373a4389 = new $a3c63f83cda4eabf$var$PlatformBuilder();\nconst $a3c63f83cda4eabf$export$7d201307d8979e21 = ({ category: category, action: action, framework: framework } = {})=>{\n const userAgent = [\n [\n $a3c63f83cda4eabf$var$BASE_USER_AGENT,\n (0, $bJXer.version)\n ]\n ];\n if (category) userAgent.push([\n category,\n action\n ]);\n userAgent.push([\n \"framework\",\n (0, $iHOzP.detectFramework)()\n ]);\n if (category && action) {\n const customState = (0, $lA3xE.getCustomUserAgent)(category, action);\n if (customState) customState.forEach((state)=>{\n userAgent.push(state);\n });\n }\n return userAgent;\n};\nconst $a3c63f83cda4eabf$export$ede38edb26c0bfdf = (customUserAgentDetails)=>{\n const userAgent = $a3c63f83cda4eabf$export$7d201307d8979e21(customUserAgentDetails);\n const userAgentString = userAgent.map(([agentKey, agentValue])=>agentKey && agentValue ? `${agentKey}/${agentValue}` : agentKey).join(\" \");\n return userAgentString;\n};\n\n});\nparcelRegister(\"k2DuP\", function(module, exports) {\n\n$parcel$export(module.exports, \"Framework\", () => $03a78c53205d4e48$export$638889172ebce0c4);\n$parcel$export(module.exports, \"Category\", () => $03a78c53205d4e48$export$3a8840c5b2ecf003);\n$parcel$export(module.exports, \"ApiAction\", () => $03a78c53205d4e48$export$126e20fdc0f0d34b);\n$parcel$export(module.exports, \"AuthAction\", () => $03a78c53205d4e48$export$900b1436d7e65f4);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar $03a78c53205d4e48$export$638889172ebce0c4;\n(function(Framework) {\n // < 100 - Web frameworks\n Framework[\"WebUnknown\"] = \"0\";\n Framework[\"React\"] = \"1\";\n Framework[\"NextJs\"] = \"2\";\n Framework[\"Angular\"] = \"3\";\n Framework[\"VueJs\"] = \"4\";\n Framework[\"Nuxt\"] = \"5\";\n Framework[\"Svelte\"] = \"6\";\n // 100s - Server side frameworks\n Framework[\"ServerSideUnknown\"] = \"100\";\n Framework[\"ReactSSR\"] = \"101\";\n Framework[\"NextJsSSR\"] = \"102\";\n Framework[\"AngularSSR\"] = \"103\";\n Framework[\"VueJsSSR\"] = \"104\";\n Framework[\"NuxtSSR\"] = \"105\";\n Framework[\"SvelteSSR\"] = \"106\";\n // 200s - Mobile framework\n Framework[\"ReactNative\"] = \"201\";\n Framework[\"Expo\"] = \"202\";\n})($03a78c53205d4e48$export$638889172ebce0c4 || ($03a78c53205d4e48$export$638889172ebce0c4 = {}));\nvar $03a78c53205d4e48$export$3a8840c5b2ecf003;\n(function(Category) {\n Category[\"API\"] = \"api\";\n Category[\"Auth\"] = \"auth\";\n Category[\"Analytics\"] = \"analytics\";\n Category[\"DataStore\"] = \"datastore\";\n Category[\"Geo\"] = \"geo\";\n Category[\"InAppMessaging\"] = \"inappmessaging\";\n Category[\"Interactions\"] = \"interactions\";\n Category[\"Predictions\"] = \"predictions\";\n Category[\"PubSub\"] = \"pubsub\";\n Category[\"PushNotification\"] = \"pushnotification\";\n Category[\"Storage\"] = \"storage\";\n})($03a78c53205d4e48$export$3a8840c5b2ecf003 || ($03a78c53205d4e48$export$3a8840c5b2ecf003 = {}));\nvar $03a78c53205d4e48$export$30c16f5c43437fd7;\n(function(AnalyticsAction) {\n AnalyticsAction[\"Record\"] = \"1\";\n AnalyticsAction[\"IdentifyUser\"] = \"2\";\n})($03a78c53205d4e48$export$30c16f5c43437fd7 || ($03a78c53205d4e48$export$30c16f5c43437fd7 = {}));\nvar $03a78c53205d4e48$export$126e20fdc0f0d34b;\n(function(ApiAction) {\n ApiAction[\"GraphQl\"] = \"1\";\n ApiAction[\"Get\"] = \"2\";\n ApiAction[\"Post\"] = \"3\";\n ApiAction[\"Put\"] = \"4\";\n ApiAction[\"Patch\"] = \"5\";\n ApiAction[\"Del\"] = \"6\";\n ApiAction[\"Head\"] = \"7\";\n})($03a78c53205d4e48$export$126e20fdc0f0d34b || ($03a78c53205d4e48$export$126e20fdc0f0d34b = {}));\nvar $03a78c53205d4e48$export$900b1436d7e65f4;\n(function(AuthAction) {\n AuthAction[\"SignUp\"] = \"1\";\n AuthAction[\"ConfirmSignUp\"] = \"2\";\n AuthAction[\"ResendSignUpCode\"] = \"3\";\n AuthAction[\"SignIn\"] = \"4\";\n AuthAction[\"FetchMFAPreference\"] = \"6\";\n AuthAction[\"UpdateMFAPreference\"] = \"7\";\n AuthAction[\"SetUpTOTP\"] = \"10\";\n AuthAction[\"VerifyTOTPSetup\"] = \"11\";\n AuthAction[\"ConfirmSignIn\"] = \"12\";\n AuthAction[\"DeleteUserAttributes\"] = \"15\";\n AuthAction[\"DeleteUser\"] = \"16\";\n AuthAction[\"UpdateUserAttributes\"] = \"17\";\n AuthAction[\"FetchUserAttributes\"] = \"18\";\n AuthAction[\"ConfirmUserAttribute\"] = \"22\";\n AuthAction[\"SignOut\"] = \"26\";\n AuthAction[\"UpdatePassword\"] = \"27\";\n AuthAction[\"ResetPassword\"] = \"28\";\n AuthAction[\"ConfirmResetPassword\"] = \"29\";\n AuthAction[\"FederatedSignIn\"] = \"30\";\n AuthAction[\"RememberDevice\"] = \"32\";\n AuthAction[\"ForgetDevice\"] = \"33\";\n AuthAction[\"FetchDevices\"] = \"34\";\n AuthAction[\"SendUserAttributeVerificationCode\"] = \"35\";\n AuthAction[\"SignInWithRedirect\"] = \"36\";\n})($03a78c53205d4e48$export$900b1436d7e65f4 || ($03a78c53205d4e48$export$900b1436d7e65f4 = {}));\nvar $03a78c53205d4e48$export$2f5a715aba4cde93;\n(function(DataStoreAction) {\n DataStoreAction[\"Subscribe\"] = \"1\";\n DataStoreAction[\"GraphQl\"] = \"2\";\n})($03a78c53205d4e48$export$2f5a715aba4cde93 || ($03a78c53205d4e48$export$2f5a715aba4cde93 = {}));\nvar $03a78c53205d4e48$export$afafab3eb8fc6fef;\n(function(GeoAction) {\n GeoAction[\"SearchByText\"] = \"0\";\n GeoAction[\"SearchByCoordinates\"] = \"1\";\n GeoAction[\"SearchForSuggestions\"] = \"2\";\n GeoAction[\"SearchByPlaceId\"] = \"3\";\n GeoAction[\"SaveGeofences\"] = \"4\";\n GeoAction[\"GetGeofence\"] = \"5\";\n GeoAction[\"ListGeofences\"] = \"6\";\n GeoAction[\"DeleteGeofences\"] = \"7\";\n})($03a78c53205d4e48$export$afafab3eb8fc6fef || ($03a78c53205d4e48$export$afafab3eb8fc6fef = {}));\nvar $03a78c53205d4e48$export$c01a8c16ffda791e;\n(function(InAppMessagingAction) {\n InAppMessagingAction[\"SyncMessages\"] = \"1\";\n InAppMessagingAction[\"IdentifyUser\"] = \"2\";\n InAppMessagingAction[\"NotifyMessageInteraction\"] = \"3\";\n})($03a78c53205d4e48$export$c01a8c16ffda791e || ($03a78c53205d4e48$export$c01a8c16ffda791e = {}));\nvar $03a78c53205d4e48$export$68e0695a774ab7fa;\n(function(InteractionsAction) {\n InteractionsAction[\"None\"] = \"0\";\n})($03a78c53205d4e48$export$68e0695a774ab7fa || ($03a78c53205d4e48$export$68e0695a774ab7fa = {}));\nvar $03a78c53205d4e48$export$aa89b4c447a07cee;\n(function(PredictionsAction) {\n PredictionsAction[\"Convert\"] = \"1\";\n PredictionsAction[\"Identify\"] = \"2\";\n PredictionsAction[\"Interpret\"] = \"3\";\n})($03a78c53205d4e48$export$aa89b4c447a07cee || ($03a78c53205d4e48$export$aa89b4c447a07cee = {}));\nvar $03a78c53205d4e48$export$ade48b30f1e78672;\n(function(PubSubAction) {\n PubSubAction[\"Subscribe\"] = \"1\";\n})($03a78c53205d4e48$export$ade48b30f1e78672 || ($03a78c53205d4e48$export$ade48b30f1e78672 = {}));\nvar $03a78c53205d4e48$export$2c5ee06ab9fa5040;\n(function(PushNotificationAction) {\n PushNotificationAction[\"InitializePushNotifications\"] = \"1\";\n PushNotificationAction[\"IdentifyUser\"] = \"2\";\n})($03a78c53205d4e48$export$2c5ee06ab9fa5040 || ($03a78c53205d4e48$export$2c5ee06ab9fa5040 = {}));\nvar $03a78c53205d4e48$export$d4f3c54b808b00ce;\n(function(StorageAction) {\n StorageAction[\"UploadData\"] = \"1\";\n StorageAction[\"DownloadData\"] = \"2\";\n StorageAction[\"List\"] = \"3\";\n StorageAction[\"Copy\"] = \"4\";\n StorageAction[\"Remove\"] = \"5\";\n StorageAction[\"GetProperties\"] = \"6\";\n StorageAction[\"GetUrl\"] = \"7\";\n})($03a78c53205d4e48$export$d4f3c54b808b00ce || ($03a78c53205d4e48$export$d4f3c54b808b00ce = {}));\n\n});\n\nparcelRegister(\"bJXer\", function(module, exports) {\n\n$parcel$export(module.exports, \"version\", () => $f2bdc992a31a3840$export$83d89fbfd8236492);\n// generated by genversion\nconst $f2bdc992a31a3840$export$83d89fbfd8236492 = \"6.0.15\";\n\n});\n\nparcelRegister(\"iHOzP\", function(module, exports) {\n\n$parcel$export(module.exports, \"detectFramework\", () => $8e898e8be4dc09ea$export$9ce73e459ec93b6a);\n$parcel$export(module.exports, \"observeFrameworkChanges\", () => $8e898e8be4dc09ea$export$5d5c467ce0b213f);\n\nvar $k2DuP = parcelRequire(\"k2DuP\");\n\nvar $1XCWz = parcelRequire(\"1XCWz\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// We want to cache detection since the framework won't change\nlet $8e898e8be4dc09ea$var$frameworkCache;\nconst $8e898e8be4dc09ea$export$d56891f33aa26edc = [];\n// Setup the detection reset tracking / timeout delays\nlet $8e898e8be4dc09ea$var$resetTriggered = false;\nconst $8e898e8be4dc09ea$var$SSR_RESET_TIMEOUT = 10; // ms\nconst $8e898e8be4dc09ea$var$WEB_RESET_TIMEOUT = 10; // ms\nconst $8e898e8be4dc09ea$var$PRIME_FRAMEWORK_DELAY = 1000; // ms\nconst $8e898e8be4dc09ea$export$9ce73e459ec93b6a = ()=>{\n if (!$8e898e8be4dc09ea$var$frameworkCache) {\n $8e898e8be4dc09ea$var$frameworkCache = (0, $1XCWz.detect)();\n if ($8e898e8be4dc09ea$var$resetTriggered) // The final run of detectFramework:\n // Starting from this point, the `frameworkCache` becomes \"final\".\n // So we don't need to notify the observers again so the observer\n // can be removed after the final notice.\n while($8e898e8be4dc09ea$export$d56891f33aa26edc.length)$8e898e8be4dc09ea$export$d56891f33aa26edc.pop()?.();\n else // The first run of detectFramework:\n // Every time we update the cache, call each observer function\n $8e898e8be4dc09ea$export$d56891f33aa26edc.forEach((fcn)=>fcn());\n // Retry once for either Unknown type after a delay (explained below)\n $8e898e8be4dc09ea$var$resetTimeout((0, $k2DuP.Framework).ServerSideUnknown, $8e898e8be4dc09ea$var$SSR_RESET_TIMEOUT);\n $8e898e8be4dc09ea$var$resetTimeout((0, $k2DuP.Framework).WebUnknown, $8e898e8be4dc09ea$var$WEB_RESET_TIMEOUT);\n }\n return $8e898e8be4dc09ea$var$frameworkCache;\n};\n/**\n * @internal Setup observer callback that will be called everytime the framework changes\n */ const $8e898e8be4dc09ea$export$5d5c467ce0b213f = (fcn)=>{\n // When the `frameworkCache` won't be updated again, we ignore all incoming\n // observers.\n if ($8e898e8be4dc09ea$var$resetTriggered) return;\n $8e898e8be4dc09ea$export$d56891f33aa26edc.push(fcn);\n};\nfunction $8e898e8be4dc09ea$export$d2adf65b87e47523() {\n $8e898e8be4dc09ea$var$frameworkCache = undefined;\n}\n// For a framework type and a delay amount, setup the event to re-detect\n// During the runtime boot, it is possible that framework detection will\n// be triggered before the framework has made modifications to the\n// global/window/etc needed for detection. When no framework is detected\n// we will reset and try again to ensure we don't use a cached\n// non-framework detection result for all requests.\nfunction $8e898e8be4dc09ea$var$resetTimeout(framework, delay) {\n if ($8e898e8be4dc09ea$var$frameworkCache === framework && !$8e898e8be4dc09ea$var$resetTriggered) setTimeout(()=>{\n $8e898e8be4dc09ea$export$d2adf65b87e47523();\n $8e898e8be4dc09ea$var$resetTriggered = true;\n setTimeout($8e898e8be4dc09ea$export$9ce73e459ec93b6a, $8e898e8be4dc09ea$var$PRIME_FRAMEWORK_DELAY);\n }, delay);\n}\n\n});\nparcelRegister(\"1XCWz\", function(module, exports) {\n\n$parcel$export(module.exports, \"detect\", () => $4f5e49be6c2f4c6b$export$17b446b869dad473);\n\nvar $k2DuP = parcelRequire(\"k2DuP\");\n\nvar $5SWUB = parcelRequire(\"5SWUB\");\n\nvar $89E5v = parcelRequire(\"89E5v\");\n\nvar $dXsZ3 = parcelRequire(\"dXsZ3\");\n\nvar $3uPOM = parcelRequire(\"3uPOM\");\n\nvar $7wUjf = parcelRequire(\"7wUjf\");\n\nvar $cZAgk = parcelRequire(\"cZAgk\");\n\nvar $04Bbd = parcelRequire(\"04Bbd\");\n\nvar $cN0eS = parcelRequire(\"cN0eS\");\n\nvar $SrjZ5 = parcelRequire(\"SrjZ5\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// These are in the order of detection where when both are detectable, the early Framework will be reported\nconst $4f5e49be6c2f4c6b$var$detectionMap = [\n // First, detect mobile\n {\n platform: (0, $k2DuP.Framework).Expo,\n detectionMethod: (0, $cN0eS.expoDetect)\n },\n {\n platform: (0, $k2DuP.Framework).ReactNative,\n detectionMethod: (0, $04Bbd.reactNativeDetect)\n },\n // Next, detect web frameworks\n {\n platform: (0, $k2DuP.Framework).NextJs,\n detectionMethod: (0, $3uPOM.nextWebDetect)\n },\n {\n platform: (0, $k2DuP.Framework).Nuxt,\n detectionMethod: (0, $7wUjf.nuxtWebDetect)\n },\n {\n platform: (0, $k2DuP.Framework).Angular,\n detectionMethod: (0, $cZAgk.angularWebDetect)\n },\n {\n platform: (0, $k2DuP.Framework).React,\n detectionMethod: (0, $5SWUB.reactWebDetect)\n },\n {\n platform: (0, $k2DuP.Framework).VueJs,\n detectionMethod: (0, $89E5v.vueWebDetect)\n },\n {\n platform: (0, $k2DuP.Framework).Svelte,\n detectionMethod: (0, $dXsZ3.svelteWebDetect)\n },\n {\n platform: (0, $k2DuP.Framework).WebUnknown,\n detectionMethod: (0, $SrjZ5.webDetect)\n },\n // Last, detect ssr frameworks\n {\n platform: (0, $k2DuP.Framework).NextJsSSR,\n detectionMethod: (0, $3uPOM.nextSSRDetect)\n },\n {\n platform: (0, $k2DuP.Framework).NuxtSSR,\n detectionMethod: (0, $7wUjf.nuxtSSRDetect)\n },\n {\n platform: (0, $k2DuP.Framework).ReactSSR,\n detectionMethod: (0, $5SWUB.reactSSRDetect)\n },\n {\n platform: (0, $k2DuP.Framework).VueJsSSR,\n detectionMethod: (0, $89E5v.vueSSRDetect)\n },\n {\n platform: (0, $k2DuP.Framework).AngularSSR,\n detectionMethod: (0, $cZAgk.angularSSRDetect)\n },\n {\n platform: (0, $k2DuP.Framework).SvelteSSR,\n detectionMethod: (0, $dXsZ3.svelteSSRDetect)\n }\n];\nfunction $4f5e49be6c2f4c6b$export$17b446b869dad473() {\n return $4f5e49be6c2f4c6b$var$detectionMap.find((detectionEntry)=>detectionEntry.detectionMethod())?.platform || (0, $k2DuP.Framework).ServerSideUnknown;\n}\n\n});\nparcelRegister(\"5SWUB\", function(module, exports) {\n\n$parcel$export(module.exports, \"reactWebDetect\", () => $627d0a27c40192cb$export$ba3f37c54f0f7805);\n$parcel$export(module.exports, \"reactSSRDetect\", () => $627d0a27c40192cb$export$86269c582305790);\n\nvar $i0jHL = parcelRequire(\"i0jHL\");\n\nvar $hPtJY = parcelRequire(\"hPtJY\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with react 18.2 - built using Vite\nfunction $627d0a27c40192cb$export$ba3f37c54f0f7805() {\n const elementKeyPrefixedWithReact = (key)=>{\n return key.startsWith(\"_react\") || key.startsWith(\"__react\");\n };\n const elementIsReactEnabled = (element)=>{\n return Object.keys(element).find(elementKeyPrefixedWithReact);\n };\n const allElementsWithId = ()=>Array.from(document.querySelectorAll(\"[id]\"));\n return (0, $i0jHL.documentExists)() && allElementsWithId().some(elementIsReactEnabled);\n}\nfunction $627d0a27c40192cb$export$86269c582305790() {\n return (0, $i0jHL.processExists)() && typeof $hPtJY.env !== \"undefined\" && !!Object.keys($hPtJY.env).find((key)=>key.includes(\"react\"));\n}\n\n});\nparcelRegister(\"i0jHL\", function(module, exports) {\n\n$parcel$export(module.exports, \"globalExists\", () => $143673b599f131f0$export$a15eed0e463030a9);\n$parcel$export(module.exports, \"windowExists\", () => $143673b599f131f0$export$daba2802a1a41c1f);\n$parcel$export(module.exports, \"documentExists\", () => $143673b599f131f0$export$b949ebcb877faa59);\n$parcel$export(module.exports, \"processExists\", () => $143673b599f131f0$export$ba10401363d0f7f6);\n$parcel$export(module.exports, \"keyPrefixMatch\", () => $143673b599f131f0$export$252f88727cff70c7);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nvar $hPtJY = parcelRequire(\"hPtJY\");\nconst $143673b599f131f0$export$a15eed0e463030a9 = ()=>{\n return typeof $parcel$global !== \"undefined\";\n};\nconst $143673b599f131f0$export$a5e7eb32e5221222 = ()=>{\n return typeof globalThis !== \"undefined\";\n};\nconst $143673b599f131f0$export$daba2802a1a41c1f = ()=>{\n return typeof window !== \"undefined\";\n};\nconst $143673b599f131f0$export$b949ebcb877faa59 = ()=>{\n return typeof document !== \"undefined\";\n};\nconst $143673b599f131f0$export$ba10401363d0f7f6 = ()=>{\n return typeof $hPtJY !== \"undefined\";\n};\nconst $143673b599f131f0$export$252f88727cff70c7 = (object, prefix)=>{\n return !!Object.keys(object).find((key)=>key.startsWith(prefix));\n};\n\n});\nparcelRegister(\"hPtJY\", function(module, exports) {\n// shim for using process in browser\nvar $cfae44f0dfdf62c0$var$process = module.exports = {};\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\nvar $cfae44f0dfdf62c0$var$cachedSetTimeout;\nvar $cfae44f0dfdf62c0$var$cachedClearTimeout;\nfunction $cfae44f0dfdf62c0$var$defaultSetTimout() {\n throw new Error(\"setTimeout has not been defined\");\n}\nfunction $cfae44f0dfdf62c0$var$defaultClearTimeout() {\n throw new Error(\"clearTimeout has not been defined\");\n}\n(function() {\n try {\n if (typeof setTimeout === \"function\") $cfae44f0dfdf62c0$var$cachedSetTimeout = setTimeout;\n else $cfae44f0dfdf62c0$var$cachedSetTimeout = $cfae44f0dfdf62c0$var$defaultSetTimout;\n } catch (e) {\n $cfae44f0dfdf62c0$var$cachedSetTimeout = $cfae44f0dfdf62c0$var$defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === \"function\") $cfae44f0dfdf62c0$var$cachedClearTimeout = clearTimeout;\n else $cfae44f0dfdf62c0$var$cachedClearTimeout = $cfae44f0dfdf62c0$var$defaultClearTimeout;\n } catch (e) {\n $cfae44f0dfdf62c0$var$cachedClearTimeout = $cfae44f0dfdf62c0$var$defaultClearTimeout;\n }\n})();\nfunction $cfae44f0dfdf62c0$var$runTimeout(fun) {\n if ($cfae44f0dfdf62c0$var$cachedSetTimeout === setTimeout) //normal enviroments in sane situations\n return setTimeout(fun, 0);\n // if setTimeout wasn't available but was latter defined\n if (($cfae44f0dfdf62c0$var$cachedSetTimeout === $cfae44f0dfdf62c0$var$defaultSetTimout || !$cfae44f0dfdf62c0$var$cachedSetTimeout) && setTimeout) {\n $cfae44f0dfdf62c0$var$cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return $cfae44f0dfdf62c0$var$cachedSetTimeout(fun, 0);\n } catch (e) {\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return $cfae44f0dfdf62c0$var$cachedSetTimeout.call(null, fun, 0);\n } catch (e) {\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return $cfae44f0dfdf62c0$var$cachedSetTimeout.call(this, fun, 0);\n }\n }\n}\nfunction $cfae44f0dfdf62c0$var$runClearTimeout(marker) {\n if ($cfae44f0dfdf62c0$var$cachedClearTimeout === clearTimeout) //normal enviroments in sane situations\n return clearTimeout(marker);\n // if clearTimeout wasn't available but was latter defined\n if (($cfae44f0dfdf62c0$var$cachedClearTimeout === $cfae44f0dfdf62c0$var$defaultClearTimeout || !$cfae44f0dfdf62c0$var$cachedClearTimeout) && clearTimeout) {\n $cfae44f0dfdf62c0$var$cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return $cfae44f0dfdf62c0$var$cachedClearTimeout(marker);\n } catch (e) {\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return $cfae44f0dfdf62c0$var$cachedClearTimeout.call(null, marker);\n } catch (e) {\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return $cfae44f0dfdf62c0$var$cachedClearTimeout.call(this, marker);\n }\n }\n}\nvar $cfae44f0dfdf62c0$var$queue = [];\nvar $cfae44f0dfdf62c0$var$draining = false;\nvar $cfae44f0dfdf62c0$var$currentQueue;\nvar $cfae44f0dfdf62c0$var$queueIndex = -1;\nfunction $cfae44f0dfdf62c0$var$cleanUpNextTick() {\n if (!$cfae44f0dfdf62c0$var$draining || !$cfae44f0dfdf62c0$var$currentQueue) return;\n $cfae44f0dfdf62c0$var$draining = false;\n if ($cfae44f0dfdf62c0$var$currentQueue.length) $cfae44f0dfdf62c0$var$queue = $cfae44f0dfdf62c0$var$currentQueue.concat($cfae44f0dfdf62c0$var$queue);\n else $cfae44f0dfdf62c0$var$queueIndex = -1;\n if ($cfae44f0dfdf62c0$var$queue.length) $cfae44f0dfdf62c0$var$drainQueue();\n}\nfunction $cfae44f0dfdf62c0$var$drainQueue() {\n if ($cfae44f0dfdf62c0$var$draining) return;\n var timeout = $cfae44f0dfdf62c0$var$runTimeout($cfae44f0dfdf62c0$var$cleanUpNextTick);\n $cfae44f0dfdf62c0$var$draining = true;\n var len = $cfae44f0dfdf62c0$var$queue.length;\n while(len){\n $cfae44f0dfdf62c0$var$currentQueue = $cfae44f0dfdf62c0$var$queue;\n $cfae44f0dfdf62c0$var$queue = [];\n while(++$cfae44f0dfdf62c0$var$queueIndex < len)if ($cfae44f0dfdf62c0$var$currentQueue) $cfae44f0dfdf62c0$var$currentQueue[$cfae44f0dfdf62c0$var$queueIndex].run();\n $cfae44f0dfdf62c0$var$queueIndex = -1;\n len = $cfae44f0dfdf62c0$var$queue.length;\n }\n $cfae44f0dfdf62c0$var$currentQueue = null;\n $cfae44f0dfdf62c0$var$draining = false;\n $cfae44f0dfdf62c0$var$runClearTimeout(timeout);\n}\n$cfae44f0dfdf62c0$var$process.nextTick = function(fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) for(var i = 1; i < arguments.length; i++)args[i - 1] = arguments[i];\n $cfae44f0dfdf62c0$var$queue.push(new $cfae44f0dfdf62c0$var$Item(fun, args));\n if ($cfae44f0dfdf62c0$var$queue.length === 1 && !$cfae44f0dfdf62c0$var$draining) $cfae44f0dfdf62c0$var$runTimeout($cfae44f0dfdf62c0$var$drainQueue);\n};\n// v8 likes predictible objects\nfunction $cfae44f0dfdf62c0$var$Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\n$cfae44f0dfdf62c0$var$Item.prototype.run = function() {\n this.fun.apply(null, this.array);\n};\n$cfae44f0dfdf62c0$var$process.title = \"browser\";\n$cfae44f0dfdf62c0$var$process.browser = true;\n$cfae44f0dfdf62c0$var$process.env = {};\n$cfae44f0dfdf62c0$var$process.argv = [];\n$cfae44f0dfdf62c0$var$process.version = \"\"; // empty string to avoid regexp issues\n$cfae44f0dfdf62c0$var$process.versions = {};\nfunction $cfae44f0dfdf62c0$var$noop() {}\n$cfae44f0dfdf62c0$var$process.on = $cfae44f0dfdf62c0$var$noop;\n$cfae44f0dfdf62c0$var$process.addListener = $cfae44f0dfdf62c0$var$noop;\n$cfae44f0dfdf62c0$var$process.once = $cfae44f0dfdf62c0$var$noop;\n$cfae44f0dfdf62c0$var$process.off = $cfae44f0dfdf62c0$var$noop;\n$cfae44f0dfdf62c0$var$process.removeListener = $cfae44f0dfdf62c0$var$noop;\n$cfae44f0dfdf62c0$var$process.removeAllListeners = $cfae44f0dfdf62c0$var$noop;\n$cfae44f0dfdf62c0$var$process.emit = $cfae44f0dfdf62c0$var$noop;\n$cfae44f0dfdf62c0$var$process.prependListener = $cfae44f0dfdf62c0$var$noop;\n$cfae44f0dfdf62c0$var$process.prependOnceListener = $cfae44f0dfdf62c0$var$noop;\n$cfae44f0dfdf62c0$var$process.listeners = function(name) {\n return [];\n};\n$cfae44f0dfdf62c0$var$process.binding = function(name) {\n throw new Error(\"process.binding is not supported\");\n};\n$cfae44f0dfdf62c0$var$process.cwd = function() {\n return \"/\";\n};\n$cfae44f0dfdf62c0$var$process.chdir = function(dir) {\n throw new Error(\"process.chdir is not supported\");\n};\n$cfae44f0dfdf62c0$var$process.umask = function() {\n return 0;\n};\n\n});\n\n\n\nparcelRegister(\"89E5v\", function(module, exports) {\n\n$parcel$export(module.exports, \"vueWebDetect\", () => $ca4f85d593562053$export$d91d90d62b78936d);\n$parcel$export(module.exports, \"vueSSRDetect\", () => $ca4f85d593562053$export$257a4c0f8294a101);\n\nvar $i0jHL = parcelRequire(\"i0jHL\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with vue 3.3.2\nfunction $ca4f85d593562053$export$d91d90d62b78936d() {\n return (0, $i0jHL.windowExists)() && (0, $i0jHL.keyPrefixMatch)(window, \"__VUE\");\n}\nfunction $ca4f85d593562053$export$257a4c0f8294a101() {\n return (0, $i0jHL.globalExists)() && (0, $i0jHL.keyPrefixMatch)($parcel$global, \"__VUE\");\n}\n\n});\n\nparcelRegister(\"dXsZ3\", function(module, exports) {\n\n$parcel$export(module.exports, \"svelteWebDetect\", () => $10841416b19b9aca$export$6dafc32a94edaed3);\n$parcel$export(module.exports, \"svelteSSRDetect\", () => $10841416b19b9aca$export$819dcb7fe144d8b0);\n\nvar $i0jHL = parcelRequire(\"i0jHL\");\n\nvar $hPtJY = parcelRequire(\"hPtJY\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with svelte 3.59\nfunction $10841416b19b9aca$export$6dafc32a94edaed3() {\n return (0, $i0jHL.windowExists)() && (0, $i0jHL.keyPrefixMatch)(window, \"__SVELTE\");\n}\nfunction $10841416b19b9aca$export$819dcb7fe144d8b0() {\n return (0, $i0jHL.processExists)() && typeof $hPtJY.env !== \"undefined\" && !!Object.keys($hPtJY.env).find((key)=>key.includes(\"svelte\"));\n}\n\n});\n\nparcelRegister(\"3uPOM\", function(module, exports) {\n\n$parcel$export(module.exports, \"nextWebDetect\", () => $da3905a0dc1faf56$export$f8462bcf03110eff);\n$parcel$export(module.exports, \"nextSSRDetect\", () => $da3905a0dc1faf56$export$61c08ed144a5d4ca);\n\nvar $i0jHL = parcelRequire(\"i0jHL\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with next 13.4 / react 18.2\nfunction $da3905a0dc1faf56$export$f8462bcf03110eff() {\n // @ts-ignore\n return (0, $i0jHL.windowExists)() && window[\"next\"] && typeof window[\"next\"] === \"object\";\n}\nfunction $da3905a0dc1faf56$export$61c08ed144a5d4ca() {\n return (0, $i0jHL.globalExists)() && ((0, $i0jHL.keyPrefixMatch)($parcel$global, \"__next\") || (0, $i0jHL.keyPrefixMatch)($parcel$global, \"__NEXT\"));\n}\n\n});\n\nparcelRegister(\"7wUjf\", function(module, exports) {\n\n$parcel$export(module.exports, \"nuxtWebDetect\", () => $24fea5be4f379b80$export$bed54a4e6d9d25fb);\n$parcel$export(module.exports, \"nuxtSSRDetect\", () => $24fea5be4f379b80$export$fb3ce982948d27e8);\n\nvar $i0jHL = parcelRequire(\"i0jHL\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with nuxt 2.15 / vue 2.7\nfunction $24fea5be4f379b80$export$bed54a4e6d9d25fb() {\n return (0, $i0jHL.windowExists)() && // @ts-ignore\n (window[\"__NUXT__\"] !== undefined || window[\"$nuxt\"] !== undefined);\n}\nfunction $24fea5be4f379b80$export$fb3ce982948d27e8() {\n // @ts-ignore\n return (0, $i0jHL.globalExists)() && typeof $parcel$global[\"__NUXT_PATHS__\"] !== \"undefined\";\n}\n\n});\n\nparcelRegister(\"cZAgk\", function(module, exports) {\n\n$parcel$export(module.exports, \"angularWebDetect\", () => $f97e986d2a7067a7$export$b5a20bd39eb02ba0);\n$parcel$export(module.exports, \"angularSSRDetect\", () => $f97e986d2a7067a7$export$8ab518c8987c870f);\n\nvar $i0jHL = parcelRequire(\"i0jHL\");\n\nvar $hPtJY = parcelRequire(\"hPtJY\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with @angular/core 16.0.0\nfunction $f97e986d2a7067a7$export$b5a20bd39eb02ba0() {\n const angularVersionSetInDocument = Boolean((0, $i0jHL.documentExists)() && document.querySelector(\"[ng-version]\"));\n const angularContentSetInWindow = Boolean(// @ts-ignore\n (0, $i0jHL.windowExists)() && typeof window[\"ng\"] !== \"undefined\");\n return angularVersionSetInDocument || angularContentSetInWindow;\n}\nfunction $f97e986d2a7067a7$export$8ab518c8987c870f() {\n return (0, $i0jHL.processExists)() && typeof $hPtJY.env === \"object\" && undefined?.startsWith(\"ng \") || false;\n}\n\n});\n\nparcelRegister(\"04Bbd\", function(module, exports) {\n\n$parcel$export(module.exports, \"reactNativeDetect\", () => $ea500a36684bbe73$export$1c8414c1859e3748);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with react-native 0.17.7\nfunction $ea500a36684bbe73$export$1c8414c1859e3748() {\n return typeof navigator !== \"undefined\" && typeof navigator.product !== \"undefined\" && navigator.product === \"ReactNative\";\n}\n\n});\n\nparcelRegister(\"cN0eS\", function(module, exports) {\n\n$parcel$export(module.exports, \"expoDetect\", () => $0b4145bd3be7264c$export$85fd46d5e29a4f7e);\n\nvar $i0jHL = parcelRequire(\"i0jHL\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with expo 48 / react-native 0.71.3\nfunction $0b4145bd3be7264c$export$85fd46d5e29a4f7e() {\n // @ts-ignore\n return (0, $i0jHL.globalExists)() && typeof $parcel$global[\"expo\"] !== \"undefined\";\n}\n\n});\n\nparcelRegister(\"SrjZ5\", function(module, exports) {\n\n$parcel$export(module.exports, \"webDetect\", () => $86fec584d392e5dc$export$41b1270b988065fb);\n\nvar $i0jHL = parcelRequire(\"i0jHL\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $86fec584d392e5dc$export$41b1270b988065fb() {\n return (0, $i0jHL.windowExists)();\n}\n\n});\n\n\n\nparcelRegister(\"lA3xE\", function(module, exports) {\n\n$parcel$export(module.exports, \"getCustomUserAgent\", () => $aeac22076f27cf78$export$e399dbcfd99a2928);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Maintains custom user-agent state set by external consumers.\nconst $aeac22076f27cf78$var$customUserAgentState = {};\n/**\n * Sets custom user agent state which will be appended to applicable requests. Returns a function that can be used to\n * clean up any custom state set with this API.\n *\n * @note\n * This API operates globally. Calling this API multiple times will result in the most recently set values for a\n * particular API being used.\n *\n * @note\n * This utility IS NOT compatible with SSR.\n *\n * @param input - SetCustomUserAgentInput that defines custom state to apply to the specified APIs.\n */ const $aeac22076f27cf78$export$20cd2fa9001e90da = (input)=>{\n // Save custom user-agent state & increment reference counter\n // TODO Remove `any` when we upgrade to TypeScript 5.2, see: https://github.com/microsoft/TypeScript/issues/44373\n $aeac22076f27cf78$var$customUserAgentState[input.category] = input.apis.reduce((acc, api)=>({\n ...acc,\n [api]: {\n refCount: acc[api]?.refCount ? acc[api].refCount + 1 : 1,\n additionalDetails: input.additionalDetails\n }\n }), $aeac22076f27cf78$var$customUserAgentState[input.category] ?? {});\n // Callback that cleans up state for APIs recorded by this call\n let cleanUpCallbackCalled = false;\n const cleanUpCallback = ()=>{\n // Only allow the cleanup callback to be called once\n if (cleanUpCallbackCalled) return;\n cleanUpCallbackCalled = true;\n input.apis.forEach((api)=>{\n const apiRefCount = $aeac22076f27cf78$var$customUserAgentState[input.category][api].refCount;\n if (apiRefCount > 1) $aeac22076f27cf78$var$customUserAgentState[input.category][api].refCount = apiRefCount - 1;\n else {\n delete $aeac22076f27cf78$var$customUserAgentState[input.category][api];\n // Clean up category if no more APIs set\n if (!Object.keys($aeac22076f27cf78$var$customUserAgentState[input.category]).length) delete $aeac22076f27cf78$var$customUserAgentState[input.category];\n }\n });\n };\n return cleanUpCallback;\n};\nconst $aeac22076f27cf78$export$e399dbcfd99a2928 = (category, api)=>$aeac22076f27cf78$var$customUserAgentState[category]?.[api]?.additionalDetails;\n\n});\n\n\n\nparcelRegister(\"6vbP8\", function(module, exports) {\n\n$parcel$export(module.exports, \"composeServiceApi\", () => $8099fb84e4081018$export$880429a8ae983d4d);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $8099fb84e4081018$export$880429a8ae983d4d = (transferHandler, serializer, deserializer, defaultConfig)=>{\n return async (config, input)=>{\n const resolvedConfig = {\n ...defaultConfig,\n ...config\n };\n // We may want to allow different endpoints from given config(other than region) and input.\n // Currently S3 supports additional `useAccelerateEndpoint` option to use accelerate endpoint.\n const endpoint = await resolvedConfig.endpointResolver(resolvedConfig, input);\n // Unlike AWS SDK clients, a serializer should NOT populate the `host` or `content-length` headers.\n // Both of these headers are prohibited per Spec(https://developer.mozilla.org/en-US/docs/Glossary/Forbidden_header_name).\n // They will be populated automatically by browser, or node-fetch polyfill.\n const request = await serializer(input, endpoint);\n const response = await transferHandler(request, {\n ...resolvedConfig\n });\n return await deserializer(response);\n };\n};\n\n});\n\n\nparcelRegister(\"4P578\", function(module, exports) {\n\n$parcel$export(module.exports, \"getRegion\", () => $a3a3f70b2bd53451$export$d4a625cede2da71b);\n$parcel$export(module.exports, \"getRegionFromIdentityPoolId\", () => $a3a3f70b2bd53451$export$8fb32fba519c460);\n\nvar $b62N7 = parcelRequire(\"b62N7\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $a3a3f70b2bd53451$export$d4a625cede2da71b(userPoolId) {\n const region = userPoolId?.split(\"_\")[0];\n if (!userPoolId || userPoolId.indexOf(\"_\") < 0 || !region || typeof region !== \"string\") throw new (0, $b62N7.AuthError)({\n name: \"InvalidUserPoolId\",\n message: \"Invalid user pool id provided.\"\n });\n return region;\n}\nfunction $a3a3f70b2bd53451$export$8fb32fba519c460(identityPoolId) {\n if (!identityPoolId || !identityPoolId.includes(\":\")) throw new (0, $b62N7.AuthError)({\n name: \"InvalidIdentityPoolIdException\",\n message: \"Invalid identity pool id provided.\",\n recoverySuggestion: \"Make sure a valid identityPoolId is given in the config.\"\n });\n return identityPoolId.split(\":\")[0];\n}\n\n});\n\nparcelRegister(\"inqgD\", function(module, exports) {\n\n$parcel$export(module.exports, \"formLoginsMap\", () => $1f210c15c4cfce94$export$edfb13e85a2c0dc4);\n\nvar $bfiP6 = parcelRequire(\"bfiP6\");\n\nvar $b62N7 = parcelRequire(\"b62N7\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $1f210c15c4cfce94$export$edfb13e85a2c0dc4(idToken) {\n const issuer = (0, $bfiP6.decodeJWT)(idToken).payload.iss;\n const res = {};\n if (!issuer) throw new (0, $b62N7.AuthError)({\n name: \"InvalidIdTokenException\",\n message: \"Invalid Idtoken.\"\n });\n let domainName = issuer.replace(/(^\\w+:|^)\\/\\//, \"\");\n res[domainName] = idToken;\n return res;\n}\n\n});\n\n\nparcelRegister(\"avjBi\", function(module, exports) {\n\n$parcel$export(module.exports, \"getCredentialsForIdentity\", () => $585cd79baee831be$export$a49c1c173ab96b58);\n\nvar $lL7zI = parcelRequire(\"lL7zI\");\n\n\nparcelRequire(\"78v1Z\");\nparcelRequire(\"lUOK3\");\n\nvar $7ecIZ = parcelRequire(\"7ecIZ\");\n\nvar $bM38a = parcelRequire(\"bM38a\");\n\nvar $6vbP8 = parcelRequire(\"6vbP8\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $585cd79baee831be$var$getCredentialsForIdentitySerializer = (input, endpoint)=>{\n const headers = (0, $lL7zI.getSharedHeaders)(\"GetCredentialsForIdentity\");\n const body = JSON.stringify(input);\n return (0, $lL7zI.buildHttpRpcRequest)(endpoint, headers, body);\n};\nconst $585cd79baee831be$var$getCredentialsForIdentityDeserializer = async (response)=>{\n if (response.statusCode >= 300) {\n const error = await (0, $bM38a.parseJsonError)(response);\n throw error;\n } else {\n const body = await (0, $bM38a.parseJsonBody)(response);\n return {\n IdentityId: body.IdentityId,\n Credentials: $585cd79baee831be$var$deserializeCredentials(body.Credentials),\n $metadata: (0, $7ecIZ.parseMetadata)(response)\n };\n }\n};\nconst $585cd79baee831be$var$deserializeCredentials = ({ AccessKeyId: AccessKeyId, SecretKey: SecretKey, SessionToken: SessionToken, Expiration: Expiration } = {})=>{\n return {\n AccessKeyId: AccessKeyId,\n SecretKey: SecretKey,\n SessionToken: SessionToken,\n Expiration: Expiration && new Date(Expiration * 1000)\n };\n};\n/**\n * @internal\n */ const $585cd79baee831be$export$a49c1c173ab96b58 = (0, $6vbP8.composeServiceApi)((0, $lL7zI.cognitoIdentityTransferHandler), $585cd79baee831be$var$getCredentialsForIdentitySerializer, $585cd79baee831be$var$getCredentialsForIdentityDeserializer, (0, $lL7zI.defaultConfig));\n\n});\n\nparcelRegister(\"kOfpC\", function(module, exports) {\n\n$parcel$export(module.exports, \"assertIdTokenInAuthTokens\", () => $611242aba31f7515$export$f4d99632f0717a4b);\n$parcel$export(module.exports, \"assertAuthTokensWithRefreshToken\", () => $611242aba31f7515$export$be38b2d22222d505);\n\nvar $b62N7 = parcelRequire(\"b62N7\");\n\nvar $cutI2 = parcelRequire(\"cutI2\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $611242aba31f7515$export$d76f9f8544dc304d(authConfig) {\n if (authConfig && authConfig.Cognito.userPoolId && authConfig.Cognito.userPoolClientId) return true;\n return false;\n}\nfunction $611242aba31f7515$export$77712ea5882cac9f(tokens) {\n if (!tokens || !tokens.accessToken) throw new (0, $b62N7.AuthError)({\n name: (0, $cutI2.USER_UNAUTHENTICATED_EXCEPTION),\n message: \"User needs to be authenticated to call this API.\",\n recoverySuggestion: \"Sign in before calling this API again.\"\n });\n}\nfunction $611242aba31f7515$export$f4d99632f0717a4b(tokens) {\n if (!tokens || !tokens.idToken) throw new (0, $b62N7.AuthError)({\n name: (0, $cutI2.USER_UNAUTHENTICATED_EXCEPTION),\n message: \"User needs to be authenticated to call this API.\",\n recoverySuggestion: \"Sign in before calling this API again.\"\n });\n}\nconst $611242aba31f7515$export$31fce2aaeafa4b60 = new (0, $b62N7.AuthError)({\n name: (0, $cutI2.TOKEN_REFRESH_EXCEPTION),\n message: `Token refresh is not supported when authenticated with the 'implicit grant' (token) oauth flow. \n\tPlease change your oauth configuration to use 'code grant' flow.`,\n recoverySuggestion: `Please logout and change your Amplify configuration to use \"code grant\" flow. \n\tE.g { responseType: 'code' }`\n});\nconst $611242aba31f7515$export$35cfa8cbd2d5bcdd = new (0, $b62N7.AuthError)({\n name: (0, $cutI2.USER_UNAUTHENTICATED_EXCEPTION),\n message: \"User needs to be authenticated to call this API.\",\n recoverySuggestion: \"Sign in before calling this API again.\"\n});\nfunction $611242aba31f7515$export$be38b2d22222d505(tokens) {\n if ($611242aba31f7515$var$isAuthenticatedWithImplicitOauthFlow(tokens)) throw $611242aba31f7515$export$31fce2aaeafa4b60;\n if (!$611242aba31f7515$var$isAuthenticatedWithRefreshToken(tokens)) throw $611242aba31f7515$export$35cfa8cbd2d5bcdd;\n}\nfunction $611242aba31f7515$export$b6f03be79626ab0f(deviceMetadata) {\n if (!deviceMetadata || !deviceMetadata.deviceKey || !deviceMetadata.deviceGroupKey || !deviceMetadata.randomPassword) throw new (0, $b62N7.AuthError)({\n name: (0, $cutI2.DEVICE_METADATA_NOT_FOUND_EXCEPTION),\n message: \"Either deviceKey, deviceGroupKey or secretPassword were not found during the sign-in process.\",\n recoverySuggestion: \"Make sure to not clear storage after calling the signIn API.\"\n });\n}\nconst $611242aba31f7515$export$3820b4ff343394ea = {\n inflightOAuth: \"inflightOAuth\",\n oauthSignIn: \"oauthSignIn\",\n oauthPKCE: \"oauthPKCE\",\n oauthState: \"oauthState\"\n};\nfunction $611242aba31f7515$var$isAuthenticated(tokens) {\n return tokens?.accessToken || tokens?.idToken;\n}\nfunction $611242aba31f7515$var$isAuthenticatedWithRefreshToken(tokens) {\n return $611242aba31f7515$var$isAuthenticated(tokens) && tokens?.refreshToken;\n}\nfunction $611242aba31f7515$var$isAuthenticatedWithImplicitOauthFlow(tokens) {\n return $611242aba31f7515$var$isAuthenticated(tokens) && !tokens?.refreshToken;\n}\n\n});\nparcelRegister(\"cutI2\", function(module, exports) {\n\n$parcel$export(module.exports, \"USER_UNAUTHENTICATED_EXCEPTION\", () => $5d443480af2ea56c$export$d29d1996d6b6f5e3);\n$parcel$export(module.exports, \"DEVICE_METADATA_NOT_FOUND_EXCEPTION\", () => $5d443480af2ea56c$export$740e7000ac27ebf3);\n$parcel$export(module.exports, \"TOKEN_REFRESH_EXCEPTION\", () => $5d443480af2ea56c$export$a0a904daf48e2c33);\n\nvar $b62N7 = parcelRequire(\"b62N7\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $5d443480af2ea56c$export$d29d1996d6b6f5e3 = \"UserUnAuthenticatedException\";\nconst $5d443480af2ea56c$export$bdd0e7e9babcd5c8 = \"UserAlreadyAuthenticatedException\";\nconst $5d443480af2ea56c$export$740e7000ac27ebf3 = \"DeviceMetadataNotFoundException\";\nconst $5d443480af2ea56c$export$fe46a12932d2550a = \"AutoSignInException\";\nconst $5d443480af2ea56c$export$36f9d08d6bc647dd = \"InvalidRedirectException\";\nconst $5d443480af2ea56c$export$60b68b138a52e5ae = new (0, $b62N7.AuthError)({\n name: $5d443480af2ea56c$export$36f9d08d6bc647dd,\n message: \"signInRedirect or signOutRedirect had an invalid format or was not found.\",\n recoverySuggestion: \"Please make sure the signIn/Out redirect in your oauth config is valid.\"\n});\nconst $5d443480af2ea56c$export$27ddc47447101bcf = \"InvalidOriginException\";\nconst $5d443480af2ea56c$export$c01b4acd6291e035 = new (0, $b62N7.AuthError)({\n name: $5d443480af2ea56c$export$27ddc47447101bcf,\n message: \"redirect is coming from a different origin. The oauth flow needs to be initiated from the same origin\",\n recoverySuggestion: \"Please call signInWithRedirect from the same origin.\"\n});\nconst $5d443480af2ea56c$export$625255707e22459c = \"OAuthSignOutException\";\nconst $5d443480af2ea56c$export$a0a904daf48e2c33 = \"TokenRefreshException\";\n\n});\n\n\n\n\nparcelRegister(\"54W3M\", function(module, exports) {\n\n$parcel$export(module.exports, \"cognitoUserPoolsTokenProvider\", () => $f908ae8342f11964$export$18e158b80aac31a7);\n\nvar $cNsoR = parcelRequire(\"cNsoR\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * The default provider for the JWT access token and ID token issued from the configured Cognito user pool. It manages\n * the refresh and storage of the tokens. It stores the tokens in `window.localStorage` if available, and falls back to\n * in-memory storage if not.\n */ const $f908ae8342f11964$export$18e158b80aac31a7 = new (0, $cNsoR.CognitoUserPoolsTokenProvider)();\nconst $f908ae8342f11964$export$66561e66d62991d0 = $f908ae8342f11964$export$18e158b80aac31a7.tokenOrchestrator;\n\n});\nparcelRegister(\"cNsoR\", function(module, exports) {\n\n$parcel$export(module.exports, \"CognitoUserPoolsTokenProvider\", () => $50ac27d44f503ae7$export$85b743bbda58cb6c);\n\nvar $57Of0 = parcelRequire(\"57Of0\");\n\nvar $fNgI2 = parcelRequire(\"fNgI2\");\n\nvar $029ov = parcelRequire(\"029ov\");\n\nvar $8sJng = parcelRequire(\"8sJng\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass $50ac27d44f503ae7$export$85b743bbda58cb6c {\n constructor(){\n this.authTokenStore = new (0, $029ov.DefaultTokenStore)();\n this.authTokenStore.setKeyValueStorage((0, $57Of0.defaultStorage));\n this.tokenOrchestrator = new (0, $8sJng.TokenOrchestrator)();\n this.tokenOrchestrator.setAuthTokenStore(this.authTokenStore);\n this.tokenOrchestrator.setTokenRefresher((0, $fNgI2.refreshAuthTokens));\n }\n getTokens({ forceRefresh: forceRefresh } = {\n forceRefresh: false\n }) {\n return this.tokenOrchestrator.getTokens({\n forceRefresh: forceRefresh\n });\n }\n setKeyValueStorage(keyValueStorage) {\n this.authTokenStore.setKeyValueStorage(keyValueStorage);\n }\n setWaitForInflightOAuth(waitForInflightOAuth) {\n this.tokenOrchestrator.setWaitForInflightOAuth(waitForInflightOAuth);\n }\n setAuthConfig(authConfig) {\n this.authTokenStore.setAuthConfig(authConfig);\n this.tokenOrchestrator.setAuthConfig(authConfig);\n }\n}\n\n});\nparcelRegister(\"fNgI2\", function(module, exports) {\n\n$parcel$export(module.exports, \"refreshAuthTokens\", () => $ec8c93d7f96724a1$export$ab413c2cb4a135d9);\n\nvar $bfiP6 = parcelRequire(\"bfiP6\");\nvar $fEpEV = parcelRequire(\"fEpEV\");\n\nvar $7aXYh = parcelRequire(\"7aXYh\");\n\nvar $4P578 = parcelRequire(\"4P578\");\n\nvar $kOfpC = parcelRequire(\"kOfpC\");\n\nvar $b62N7 = parcelRequire(\"b62N7\");\n\nvar $7fUr4 = parcelRequire(\"7fUr4\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $ec8c93d7f96724a1$var$refreshAuthTokensFunction = async ({ tokens: tokens, authConfig: authConfig, username: username })=>{\n (0, $bfiP6.assertTokenProviderConfig)(authConfig?.Cognito);\n const region = (0, $4P578.getRegion)(authConfig.Cognito.userPoolId);\n (0, $kOfpC.assertAuthTokensWithRefreshToken)(tokens);\n const refreshTokenString = tokens.refreshToken;\n const AuthParameters = {\n REFRESH_TOKEN: refreshTokenString\n };\n if (tokens.deviceMetadata?.deviceKey) AuthParameters[\"DEVICE_KEY\"] = tokens.deviceMetadata.deviceKey;\n const UserContextData = (0, $7fUr4.getUserContextData)({\n username: username,\n userPoolId: authConfig.Cognito.userPoolId,\n userPoolClientId: authConfig.Cognito.userPoolClientId\n });\n const { AuthenticationResult: AuthenticationResult } = await (0, $7aXYh.initiateAuth)({\n region: region\n }, {\n ClientId: authConfig?.Cognito?.userPoolClientId,\n AuthFlow: \"REFRESH_TOKEN_AUTH\",\n AuthParameters: AuthParameters,\n UserContextData: UserContextData\n });\n const accessToken = (0, $bfiP6.decodeJWT)(AuthenticationResult?.AccessToken ?? \"\");\n const idToken = AuthenticationResult?.IdToken ? (0, $bfiP6.decodeJWT)(AuthenticationResult.IdToken) : undefined;\n const iat = accessToken.payload.iat;\n // This should never happen. If it does, it's a bug from the service.\n if (!iat) throw new (0, $b62N7.AuthError)({\n name: \"iatNotFoundException\",\n message: \"iat not found in access token\"\n });\n const clockDrift = iat * 1000 - new Date().getTime();\n return {\n accessToken: accessToken,\n idToken: idToken,\n clockDrift: clockDrift,\n refreshToken: refreshTokenString,\n username: username\n };\n};\nconst $ec8c93d7f96724a1$export$ab413c2cb4a135d9 = (0, $fEpEV.deDupeAsyncFunction)($ec8c93d7f96724a1$var$refreshAuthTokensFunction);\n\n});\nparcelRegister(\"fEpEV\", function(module, exports) {\n\n$parcel$export(module.exports, \"deDupeAsyncFunction\", () => $f03ecb0e97a4a66d$export$cd8d22e3dc00ae5a);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * returns in-flight promise if there is one\n *\n * @param asyncFunction - asyncFunction to be deduped.\n * @returns - the return type of the callback\n */ const $f03ecb0e97a4a66d$export$cd8d22e3dc00ae5a = (asyncFunction)=>{\n let inflightPromise;\n return async (...args)=>{\n if (inflightPromise) return inflightPromise;\n inflightPromise = new Promise(async (resolve, reject)=>{\n try {\n const result = await asyncFunction(...args);\n resolve(result);\n } catch (error) {\n reject(error);\n } finally{\n inflightPromise = undefined;\n }\n });\n return inflightPromise;\n };\n};\n\n});\n\nparcelRegister(\"7aXYh\", function(module, exports) {\n\n$parcel$export(module.exports, \"initiateAuth\", () => $77410195643a0033$export$567b0d5ec943f827);\n\nvar $6vbP8 = parcelRequire(\"6vbP8\");\n\nvar $lNhjF = parcelRequire(\"lNhjF\");\n\nvar $bM38a = parcelRequire(\"bM38a\");\n\nvar $iNzmv = parcelRequire(\"iNzmv\");\n\nvar $b62N7 = parcelRequire(\"b62N7\");\nconst $77410195643a0033$var$buildUserPoolSerializer = (operation)=>(input, endpoint)=>{\n const headers = (0, $lNhjF.getSharedHeaders)(operation);\n const body = JSON.stringify(input);\n return (0, $lNhjF.buildHttpRpcRequest)(endpoint, headers, body);\n };\nconst $77410195643a0033$var$buildUserPoolDeserializer = ()=>{\n return async (response)=>{\n if (response.statusCode >= 300) {\n const error = await (0, $bM38a.parseJsonError)(response);\n (0, $iNzmv.assertServiceError)(error);\n throw new (0, $b62N7.AuthError)({\n name: error.name,\n message: error.message\n });\n } else {\n const body = await (0, $bM38a.parseJsonBody)(response);\n return body;\n }\n };\n};\nconst $77410195643a0033$var$handleEmptyResponseDeserializer = ()=>{\n return async (response)=>{\n if (response.statusCode >= 300) {\n const error = await (0, $bM38a.parseJsonError)(response);\n (0, $iNzmv.assertServiceError)(error);\n throw new (0, $b62N7.AuthError)({\n name: error.name,\n message: error.message\n });\n } else return undefined;\n };\n};\nconst $77410195643a0033$export$567b0d5ec943f827 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"InitiateAuth\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$2428f6ba65615593 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"RevokeToken\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$cf64224bcd829024 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"SignUp\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$2ce39ab6662e8c24 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"ConfirmSignUp\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$66791fb2cfeec3e = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"ForgotPassword\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$c7a5d0826ce3a2b2 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"ConfirmForgotPassword\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$b196467a22b300ec = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"RespondToAuthChallenge\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$f24137cafeaef1a1 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"ResendConfirmationCode\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$72b1124e126ff51c = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"VerifySoftwareToken\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$4531a27964554be8 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"AssociateSoftwareToken\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$b6a1b2cc7e7e6b1e = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"SetUserMFAPreference\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$7cbf767827cd68ba = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"GetUser\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$99d837dc30eb1ef7 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"ChangePassword\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$3a7ad63dc35b752f = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"ConfirmDevice\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$d0b7632b5e5fb312 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"ForgetDevice\"), $77410195643a0033$var$handleEmptyResponseDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$7d0f10f273c0438a = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"DeleteUser\"), $77410195643a0033$var$handleEmptyResponseDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$3a9721eaccd0e7b3 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"GetUserAttributeVerificationCode\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$a92c2ab9b6303723 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"GlobalSignOut\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$16ff8cb4f547be0 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"UpdateUserAttributes\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$40fc6c986f86e9a5 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"VerifyUserAttribute\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$e1c4af6b7c9755a8 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"UpdateDeviceStatus\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$11154f886a75108 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"ListDevices\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\nconst $77410195643a0033$export$a97f0f1c87d00e1 = (0, $6vbP8.composeServiceApi)((0, $lNhjF.cognitoUserPoolTransferHandler), $77410195643a0033$var$buildUserPoolSerializer(\"DeleteUserAttributes\"), $77410195643a0033$var$buildUserPoolDeserializer(), (0, $lNhjF.defaultConfig));\n\n});\nparcelRegister(\"lNhjF\", function(module, exports) {\n\n$parcel$export(module.exports, \"cognitoUserPoolTransferHandler\", () => $fe4e6ba99be63312$export$10f11e95d7a96f7b);\n$parcel$export(module.exports, \"defaultConfig\", () => $fe4e6ba99be63312$export$f84bd70098573c5c);\n$parcel$export(module.exports, \"getSharedHeaders\", () => $fe4e6ba99be63312$export$a46bbeaba09f7285);\n$parcel$export(module.exports, \"buildHttpRpcRequest\", () => $fe4e6ba99be63312$export$a692bdb7eb624f96);\n\nvar $1qbEC = parcelRequire(\"1qbEC\");\n\nvar $fqhqt = parcelRequire(\"fqhqt\");\nvar $4ZD6k = parcelRequire(\"4ZD6k\");\nvar $5D9nd = parcelRequire(\"5D9nd\");\nvar $bM38a = parcelRequire(\"bM38a\");\nvar $itEnq = parcelRequire(\"itEnq\");\n\nvar $7Ar4G = parcelRequire(\"7Ar4G\");\nvar $dj9FS = parcelRequire(\"dj9FS\");\n\nvar $8e8Xp = parcelRequire(\"8e8Xp\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * The service name used to sign requests if the API requires authentication.\n */ const $fe4e6ba99be63312$var$SERVICE_NAME = \"cognito-idp\";\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region.\n */ const $fe4e6ba99be63312$var$endpointResolver = ({ region: region })=>{\n const authConfig = (0, $1qbEC.Amplify).getConfig().Auth?.Cognito;\n const customURL = authConfig?.userPoolEndpoint;\n const defaultURL = new (0, $7Ar4G.AmplifyUrl)(`https://${$fe4e6ba99be63312$var$SERVICE_NAME}.${region}.${(0, $fqhqt.getDnsSuffix)(region)}`);\n return {\n url: customURL ? new (0, $7Ar4G.AmplifyUrl)(customURL) : defaultURL\n };\n};\n/**\n * A Cognito Identity-specific middleware that disables caching for all requests.\n */ const $fe4e6ba99be63312$var$disableCacheMiddleware = ()=>(next, context)=>async function disableCacheMiddleware(request) {\n request.headers[\"cache-control\"] = \"no-store\";\n return next(request);\n };\n/**\n * A Cognito Identity-specific transfer handler that does NOT sign requests, and\n * disables caching.\n *\n * @internal\n */ const $fe4e6ba99be63312$export$10f11e95d7a96f7b = (0, $8e8Xp.composeTransferHandler)((0, $itEnq.unauthenticatedHandler), [\n $fe4e6ba99be63312$var$disableCacheMiddleware\n]);\n/**\n * @internal\n */ const $fe4e6ba99be63312$export$f84bd70098573c5c = {\n service: $fe4e6ba99be63312$var$SERVICE_NAME,\n endpointResolver: $fe4e6ba99be63312$var$endpointResolver,\n retryDecider: (0, $4ZD6k.getRetryDecider)((0, $bM38a.parseJsonError)),\n computeDelay: (0, $5D9nd.jitteredBackoff),\n userAgentValue: (0, $dj9FS.getAmplifyUserAgent)(),\n cache: \"no-store\"\n};\n/**\n * @internal\n */ const $fe4e6ba99be63312$export$a46bbeaba09f7285 = (operation)=>({\n \"content-type\": \"application/x-amz-json-1.1\",\n \"x-amz-target\": `AWSCognitoIdentityProviderService.${operation}`\n });\n/**\n * @internal\n */ const $fe4e6ba99be63312$export$a692bdb7eb624f96 = ({ url: url }, headers, body)=>({\n headers: headers,\n url: url,\n body: body,\n method: \"POST\"\n });\n\n});\n\nparcelRegister(\"iNzmv\", function(module, exports) {\n\n$parcel$export(module.exports, \"assertServiceError\", () => $97dc54107f586751$export$5b3890f50cd4853f);\n\nvar $b62N7 = parcelRequire(\"b62N7\");\n\nvar $8rSHg = parcelRequire(\"8rSHg\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $97dc54107f586751$export$5b3890f50cd4853f(error) {\n if (!error || error.name === \"Error\" || error instanceof TypeError) throw new (0, $b62N7.AuthError)({\n name: (0, $8rSHg.AmplifyErrorCode).Unknown,\n message: \"An unknown error has occurred.\",\n underlyingError: error\n });\n}\n\n});\n\n\nparcelRegister(\"7fUr4\", function(module, exports) {\n\n$parcel$export(module.exports, \"getUserContextData\", () => $166ed226583428f1$export$b6e6cdd1f90faa62);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $166ed226583428f1$export$b6e6cdd1f90faa62({ username: username, userPoolId: userPoolId, userPoolClientId: userPoolClientId }) {\n if (typeof window === \"undefined\") return undefined;\n const amazonCognitoAdvancedSecurityData = window.AmazonCognitoAdvancedSecurityData;\n if (typeof amazonCognitoAdvancedSecurityData === \"undefined\") return undefined;\n const advancedSecurityData = amazonCognitoAdvancedSecurityData.getData(username, userPoolId, userPoolClientId);\n if (advancedSecurityData) {\n const userContextData = {\n EncodedData: advancedSecurityData\n };\n return userContextData;\n }\n return {};\n}\n\n});\n\n\nparcelRegister(\"8sJng\", function(module, exports) {\n\n$parcel$export(module.exports, \"TokenOrchestrator\", () => $67be88f695aa02a6$export$ba2f3fbc8979d2e6);\n\nvar $5RCQ5 = parcelRequire(\"5RCQ5\");\n\nvar $5RCQ5 = parcelRequire(\"5RCQ5\");\nvar $bfiP6 = parcelRequire(\"bfiP6\");\nvar $hMbLp = parcelRequire(\"hMbLp\");\n\nvar $iNzmv = parcelRequire(\"iNzmv\");\n\nvar $b62N7 = parcelRequire(\"b62N7\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass $67be88f695aa02a6$export$ba2f3fbc8979d2e6 {\n constructor(){\n this.waitForInflightOAuth = async ()=>{};\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n setTokenRefresher(tokenRefresher) {\n this.tokenRefresher = tokenRefresher;\n }\n setAuthTokenStore(tokenStore) {\n this.tokenStore = tokenStore;\n }\n setWaitForInflightOAuth(waitForInflightOAuth) {\n this.waitForInflightOAuth = waitForInflightOAuth;\n }\n getTokenStore() {\n if (!this.tokenStore) throw new (0, $b62N7.AuthError)({\n name: \"EmptyTokenStoreException\",\n message: \"TokenStore not set\"\n });\n return this.tokenStore;\n }\n getTokenRefresher() {\n if (!this.tokenRefresher) throw new (0, $b62N7.AuthError)({\n name: \"EmptyTokenRefresherException\",\n message: \"TokenRefresher not set\"\n });\n return this.tokenRefresher;\n }\n async getTokens(options) {\n let tokens;\n try {\n (0, $bfiP6.assertTokenProviderConfig)(this.authConfig?.Cognito);\n } catch (_err) {\n // Token provider not configured\n return null;\n }\n await this.waitForInflightOAuth();\n tokens = await this.getTokenStore().loadTokens();\n const username = await this.getTokenStore().getLastAuthUser();\n if (tokens === null) return null;\n const idTokenExpired = !!tokens?.idToken && (0, $hMbLp.isTokenExpired)({\n expiresAt: (tokens.idToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0\n });\n const accessTokenExpired = (0, $hMbLp.isTokenExpired)({\n expiresAt: (tokens.accessToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0\n });\n if (options?.forceRefresh || idTokenExpired || accessTokenExpired) {\n tokens = await this.refreshTokens({\n tokens: tokens,\n username: username\n });\n if (tokens === null) return null;\n }\n return {\n accessToken: tokens?.accessToken,\n idToken: tokens?.idToken,\n signInDetails: tokens?.signInDetails\n };\n }\n async refreshTokens({ tokens: tokens, username: username }) {\n try {\n const newTokens = await this.getTokenRefresher()({\n tokens: tokens,\n authConfig: this.authConfig,\n username: username\n });\n await this.setTokens({\n tokens: newTokens\n });\n (0, $5RCQ5.Hub).dispatch(\"auth\", {\n event: \"tokenRefresh\"\n }, \"Auth\", (0, $5RCQ5.AMPLIFY_SYMBOL));\n return newTokens;\n } catch (err) {\n return this.handleErrors(err);\n }\n }\n handleErrors(err) {\n (0, $iNzmv.assertServiceError)(err);\n if (err.message !== \"Network error\") // TODO(v6): Check errors on client\n this.clearTokens();\n (0, $5RCQ5.Hub).dispatch(\"auth\", {\n event: \"tokenRefresh_failure\",\n data: {\n error: err\n }\n }, \"Auth\", (0, $5RCQ5.AMPLIFY_SYMBOL));\n if (err.name.startsWith(\"NotAuthorizedException\")) return null;\n throw err;\n }\n async setTokens({ tokens: tokens }) {\n return this.getTokenStore().storeTokens(tokens);\n }\n async clearTokens() {\n return this.getTokenStore().clearTokens();\n }\n getDeviceMetadata(username) {\n return this.getTokenStore().getDeviceMetadata(username);\n }\n clearDeviceMetadata(username) {\n return this.getTokenStore().clearDeviceMetadata(username);\n }\n}\n\n});\n\n\n\n\nparcelRegister(\"l8biK\", function(module, exports) {\n\n$parcel$export(module.exports, \"generateClient\", () => $f4242ff18250f860$export$46dced0a73bfb171);\n\nvar $f979g = parcelRequire(\"f979g\");\n\nvar $1qbEC = parcelRequire(\"1qbEC\");\n/**\n * Generates an API client that can work with models or raw GraphQL\n */ function $f4242ff18250f860$export$46dced0a73bfb171(options = {}) {\n return (0, $f979g.generateClient)({\n ...options,\n amplify: (0, $1qbEC.Amplify)\n });\n}\n\n});\nparcelRegister(\"f979g\", function(module, exports) {\n\n$parcel$export(module.exports, \"generateClient\", () => $d8005fae3431ff04$export$46dced0a73bfb171);\n\nvar $yL58Q = parcelRequire(\"yL58Q\");\n\nvar $8cam8 = parcelRequire(\"8cam8\");\n\nvar $lvJDy = parcelRequire(\"lvJDy\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @private\n *\n * Creates a client that can be used to make GraphQL requests, using a provided `AmplifyClassV6`\n * compatible context object for config and auth fetching.\n *\n * @param params\n * @returns\n */ function $d8005fae3431ff04$export$46dced0a73bfb171(params) {\n const client = {\n [(0, $lvJDy.__amplify)]: params.amplify,\n [(0, $lvJDy.__authMode)]: params.authMode,\n [(0, $lvJDy.__authToken)]: params.authToken,\n [(0, $lvJDy.__headers)]: params.headers,\n graphql: $yL58Q.graphql,\n cancel: $yL58Q.cancel,\n isCancelError: $yL58Q.isCancelError,\n models: {}\n };\n client.models = (0, $8cam8.generateModelsProperty)(client, params);\n return client;\n}\n\n});\nparcelRegister(\"yL58Q\", function(module, exports) {\n\n$parcel$export(module.exports, \"graphql\", () => $df8eeec06c50fd24$export$1eb4e7c0ed67b035);\n$parcel$export(module.exports, \"cancel\", () => $df8eeec06c50fd24$export$70b61ad426ddbe54);\n$parcel$export(module.exports, \"isCancelError\", () => $df8eeec06c50fd24$export$a88a1555052550c7);\n\nvar $jmbrF = parcelRequire(\"jmbrF\");\n\nvar $lvJDy = parcelRequire(\"lvJDy\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Invokes graphql operations against a graphql service, providing correct input and\n * output types if Amplify-generated graphql from a recent version of the CLI/codegen\n * are used *or* correct typing is provided via the type argument.\n *\n * Amplify-generated \"branded\" graphql queries will look similar to this:\n *\n * ```ts\n * //\n * // |-- branding\n * // v\n * export const getModel = `...` as GeneratedQuery<\n * \tGetModelQueryVariables,\n * \tGetModelQuery\n * >;\n * ```\n *\n * If this branding is not in your generated graphql, update to a newer version of\n * CLI/codegen and regenerate your graphql using `amplify codegen`.\n *\n * ## Using Amplify-generated graphql\n *\n * ```ts\n * import * as queries from './graphql/queries';\n *\n * //\n * // |-- correctly typed graphql response containing a Widget\n * // v\n * const queryResult = await graphql({\n * \tquery: queries.getWidget,\n * \tvariables: {\n * \t\tid: \"abc\", // <-- type hinted/enforced\n * \t},\n * });\n *\n * //\n * // |-- a correctly typed Widget\n * // v\n * const fetchedWidget = queryResult.data?.getWidget!;\n * ```\n *\n * ## Custom input + result types\n *\n * To provide input types (`variables`) and result types:\n *\n * ```ts\n * type GetById_NameOnly = {\n * \tvariables: {\n * \t\tid: string\n * \t},\n * \tresult: Promise<{\n * \t\tdata: { getWidget: { name: string } }\n * \t}>\n * }\n *\n * //\n * // |-- type is GetById_NameOnly[\"result\"]\n * // v\n * const result = graphql({\n * \tquery: \"...\",\n * \tvariables: { id: \"abc\" } // <-- type of GetById_NameOnly[\"variables\"]\n * });\n * ```\n *\n * ## Custom result type only\n *\n * To specify result types only, use a type that is *not* in the `{variables, result}` shape:\n *\n * ```ts\n * type MyResultType = Promise<{\n * \tdata: {\n * \t\tgetWidget: { name: string }\n * \t}\n * }>\n *\n * //\n * // |-- type is MyResultType\n * // v\n * const result = graphql({query: \"...\"});\n * ```\n *\n * @param options\n * @param additionalHeaders\n */ function $df8eeec06c50fd24$export$1eb4e7c0ed67b035(options, additionalHeaders) {\n // inject client-level auth \n options.authMode = options.authMode || this[0, $lvJDy.__authMode];\n options.authToken = options.authToken || this[0, $lvJDy.__authToken];\n /**\n * The correctness of these typings depends on correct string branding or overrides.\n * Neither of these can actually be validated at runtime. Hence, we don't perform\n * any validation or type-guarding here.\n */ const result = (0, $jmbrF.GraphQLAPI).graphql(this[0, $lvJDy.__amplify], options, additionalHeaders);\n return result;\n}\n/**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns - A boolean indicating if the request was cancelled\n */ function $df8eeec06c50fd24$export$70b61ad426ddbe54(promise, message) {\n return (0, $jmbrF.GraphQLAPI).cancel(promise, message);\n}\n/**\n * Checks to see if an error thrown is from an api request cancellation\n * @param {any} error - Any error\n * @returns - A boolean indicating if the error was from an api request cancellation\n */ function $df8eeec06c50fd24$export$a88a1555052550c7(error) {\n return (0, $jmbrF.GraphQLAPI).isCancelError(error);\n}\n\n});\nparcelRegister(\"jmbrF\", function(module, exports) {\n\n$parcel$export(module.exports, \"GraphQLAPI\", () => $e0980bc58fdd67fa$export$6572ab1b3fe6697f);\n\nvar $k2DuP = parcelRequire(\"k2DuP\");\n\nvar $cGZt7 = parcelRequire(\"cGZt7\");\nconst $e0980bc58fdd67fa$export$78930a3b816845f9 = (query, variables = {}, authToken)=>({\n query: query,\n variables: variables,\n authToken: authToken\n });\n/**\n * Export Cloud Logic APIs\n */ class $e0980bc58fdd67fa$export$e32503f9802a56ee extends (0, $cGZt7.InternalGraphQLAPIClass) {\n getModuleName() {\n return \"GraphQLAPI\";\n }\n /**\n * Executes a GraphQL operation\n *\n * @param options - GraphQL Options\n * @param [additionalHeaders] - headers to merge in after any `libraryConfigHeaders` set in the config\n * @returns An Observable if the query is a subscription query, else a promise of the graphql result.\n */ graphql(amplify, options, additionalHeaders) {\n return super.graphql(amplify, options, additionalHeaders, {\n category: (0, $k2DuP.Category).API,\n action: (0, $k2DuP.ApiAction).GraphQl\n });\n }\n /**\n * Checks to see if an error thrown is from an api request cancellation\n * @param error - Any error\n * @returns A boolean indicating if the error was from an api request cancellation\n */ isCancelError(error) {\n return super.isCancelError(error);\n }\n /**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns A boolean indicating if the request was cancelled\n */ cancel(request, message) {\n return super.cancel(request, message);\n }\n}\nconst $e0980bc58fdd67fa$export$6572ab1b3fe6697f = new $e0980bc58fdd67fa$export$e32503f9802a56ee();\n\n});\nparcelRegister(\"cGZt7\", function(module, exports) {\n\n$parcel$export(module.exports, \"InternalGraphQLAPIClass\", () => $417d5886f54fa8b9$export$c3e852ee609522ad);\n\nvar $fHcz3 = parcelRequire(\"fHcz3\");\nvar $8DJ2k = parcelRequire(\"8DJ2k\");\nvar $3o9dz = parcelRequire(\"3o9dz\");\n\nvar $fT695 = parcelRequire(\"fT695\");\n\nvar $gJw02 = parcelRequire(\"gJw02\");\n\nvar $7Ar4G = parcelRequire(\"7Ar4G\");\nvar $dj9FS = parcelRequire(\"dj9FS\");\n\nvar $lvJDy = parcelRequire(\"lvJDy\");\nparcelRequire(\"LTBY8\");\nvar $3Qiot = parcelRequire(\"3Qiot\");\nparcelRequire(\"dOmJe\");\nvar $cfOsN = parcelRequire(\"cfOsN\");\nvar $dOmJe = parcelRequire(\"dOmJe\");\n\nvar $99ZQ7 = parcelRequire(\"99ZQ7\");\n\nvar $4un4F = parcelRequire(\"4un4F\");\n\nvar $2bSZt = parcelRequire(\"2bSZt\");\n\nvar $027iw = parcelRequire(\"027iw\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $417d5886f54fa8b9$var$USER_AGENT_HEADER = \"x-amz-user-agent\";\nnew (0, $gJw02.ConsoleLogger)(\"GraphQLAPI\");\nconst $417d5886f54fa8b9$var$isAmplifyInstance = (amplify)=>{\n return typeof amplify !== \"function\";\n};\n/**\n * Export Cloud Logic APIs\n */ class $417d5886f54fa8b9$export$c3e852ee609522ad {\n constructor(){\n /**\n * @private\n */ this.appSyncRealTime = new (0, $99ZQ7.AWSAppSyncRealTimeProvider)();\n this._api = {\n post: $dOmJe.post,\n cancelREST: (0, $cfOsN.cancel),\n isCancelErrorREST: (0, $3Qiot.isCancelError),\n updateRequestToBeCancellable: $cfOsN.updateRequestToBeCancellable\n };\n }\n getModuleName() {\n return \"InternalGraphQLAPI\";\n }\n async _headerBasedAuth(amplify, authMode, additionalHeaders = {}) {\n const { region: region, endpoint: appSyncGraphqlEndpoint, apiKey: apiKey } = (0, $4un4F.resolveConfig)(amplify);\n let headers = {};\n switch(authMode){\n case \"apiKey\":\n if (!apiKey) throw new Error((0, $lvJDy.GraphQLAuthError).NO_API_KEY);\n headers = {\n \"X-Api-Key\": apiKey\n };\n break;\n case \"iam\":\n const session = await amplify.Auth.fetchAuthSession();\n if (session.credentials === undefined) throw new Error((0, $lvJDy.GraphQLAuthError).NO_CREDENTIALS);\n break;\n case \"oidc\":\n case \"userPool\":\n try {\n let token;\n token = (await amplify.Auth.fetchAuthSession()).tokens?.accessToken.toString();\n if (!token) throw new Error((0, $lvJDy.GraphQLAuthError).NO_FEDERATED_JWT);\n headers = {\n Authorization: token\n };\n } catch (e) {\n throw new Error((0, $lvJDy.GraphQLAuthError).NO_CURRENT_USER);\n }\n break;\n case \"lambda\":\n if (typeof additionalHeaders === \"object\" && !additionalHeaders.Authorization) throw new Error((0, $lvJDy.GraphQLAuthError).NO_AUTH_TOKEN);\n headers = {\n Authorization: additionalHeaders.Authorization\n };\n break;\n }\n return headers;\n }\n /**\n * to get the operation type\n * @param operation\n */ getGraphqlOperationType(operation) {\n const doc = (0, $8DJ2k.parse)(operation);\n const definitions = doc.definitions;\n const [{ operation: operationType }] = definitions;\n return operationType;\n }\n /**\n * Executes a GraphQL operation\n *\n * @param options - GraphQL Options\n * @param [additionalHeaders] - headers to merge in after any `libraryConfigHeaders` set in the config\n * @returns An Observable if the query is a subscription query, else a promise of the graphql result.\n */ graphql(amplify, { query: paramQuery, variables: variables = {}, authMode: authMode, authToken: authToken }, additionalHeaders, customUserAgentDetails) {\n const query = typeof paramQuery === \"string\" ? (0, $8DJ2k.parse)(paramQuery) : (0, $8DJ2k.parse)((0, $3o9dz.print)(paramQuery));\n const [operationDef = {}] = query.definitions.filter((def)=>def.kind === \"OperationDefinition\");\n const { operation: operationType } = operationDef;\n const headers = additionalHeaders || {};\n switch(operationType){\n case \"query\":\n case \"mutation\":\n const abortController = new AbortController();\n let responsePromise;\n if ($417d5886f54fa8b9$var$isAmplifyInstance(amplify)) responsePromise = this._graphql(amplify, {\n query: query,\n variables: variables,\n authMode: authMode\n }, headers, abortController, customUserAgentDetails, authToken);\n else {\n const wrapper = (amplifyInstance)=>this._graphql(amplifyInstance, {\n query: query,\n variables: variables,\n authMode: authMode\n }, headers, abortController, customUserAgentDetails, authToken);\n responsePromise = amplify(wrapper);\n }\n this._api.updateRequestToBeCancellable(responsePromise, abortController);\n return responsePromise;\n case \"subscription\":\n return this._graphqlSubscribe(amplify, {\n query: query,\n variables: variables,\n authMode: authMode\n }, headers, customUserAgentDetails, authToken);\n default:\n throw new Error(`invalid operation type: ${operationType}`);\n }\n }\n async _graphql(amplify, { query: query, variables: variables, authMode: explicitAuthMode }, additionalHeaders = {}, abortController, customUserAgentDetails, authToken) {\n const { region: region, endpoint: appSyncGraphqlEndpoint, customEndpoint: customEndpoint, customEndpointRegion: customEndpointRegion, defaultAuthMode: defaultAuthMode } = (0, $4un4F.resolveConfig)(amplify);\n const authMode = explicitAuthMode || defaultAuthMode || \"iam\";\n /**\n * Retrieve library options from Amplify configuration.\n * `customHeaders` here are from the Amplify configuration options,\n * and are for non-AppSync endpoints only. These are *not* the same as\n * `additionalHeaders`, which are custom headers that are either 1)\n * included when configuring the API client or 2) passed along with\n * individual requests.\n */ const { headers: customHeaders, withCredentials: withCredentials } = (0, $2bSZt.resolveLibraryOptions)(amplify);\n /**\n * Client or request-specific custom headers that may or may not be\n * returned by a function:\n */ let additionalCustomHeaders;\n if (typeof additionalHeaders === \"function\") {\n const requestOptions = {\n method: \"POST\",\n url: new (0, $7Ar4G.AmplifyUrl)(customEndpoint || appSyncGraphqlEndpoint || \"\").toString(),\n queryString: (0, $3o9dz.print)(query)\n };\n additionalCustomHeaders = await additionalHeaders(requestOptions);\n } else additionalCustomHeaders = additionalHeaders;\n // if an authorization header is set, have the explicit authToken take precedence\n if (authToken) additionalCustomHeaders = {\n ...additionalCustomHeaders,\n Authorization: authToken\n };\n // TODO: Figure what we need to do to remove `!`'s.\n const headers = {\n ...!customEndpoint && await this._headerBasedAuth(amplify, authMode, additionalCustomHeaders),\n /**\n * Custom endpoint headers.\n * If there is both a custom endpoint and custom region present, we get the headers.\n * If there is a custom endpoint but no region, we return an empty object.\n * If neither are present, we return an empty object.\n */ ...customEndpoint && (customEndpointRegion ? await this._headerBasedAuth(amplify, authMode, additionalCustomHeaders) : {}) || {},\n // Custom headers included in Amplify configuration options:\n ...customHeaders && await customHeaders({\n query: (0, $3o9dz.print)(query),\n variables: variables\n }),\n // Custom headers from individual requests or API client configuration:\n ...additionalCustomHeaders,\n // User agent headers:\n ...!customEndpoint && {\n [$417d5886f54fa8b9$var$USER_AGENT_HEADER]: (0, $dj9FS.getAmplifyUserAgent)(customUserAgentDetails)\n }\n };\n const body = {\n query: (0, $3o9dz.print)(query),\n variables: variables || null\n };\n let signingServiceInfo;\n /**\n * We do not send the signing service info to the REST API under the\n * following conditions (i.e. it will not sign the request):\n * - there is a custom endpoint but no region\n * - the auth mode is `none`, or `apiKey`\n * - the auth mode is a type other than the types listed below\n */ if (customEndpoint && !customEndpointRegion || authMode !== \"oidc\" && authMode !== \"userPool\" && authMode !== \"iam\" && authMode !== \"lambda\") signingServiceInfo = undefined;\n else signingServiceInfo = {\n service: !customEndpointRegion ? \"appsync\" : \"execute-api\",\n region: !customEndpointRegion ? region : customEndpointRegion\n };\n const endpoint = customEndpoint || appSyncGraphqlEndpoint;\n if (!endpoint) {\n const error = new (0, $fHcz3.GraphQLError)(\"No graphql endpoint provided.\");\n throw {\n data: {},\n errors: [\n error\n ]\n };\n }\n let response;\n try {\n const { body: responseBody } = await this._api.post({\n url: new (0, $7Ar4G.AmplifyUrl)(endpoint),\n options: {\n headers: headers,\n body: body,\n signingServiceInfo: signingServiceInfo,\n withCredentials: withCredentials\n },\n abortController: abortController\n });\n const result = await responseBody.json();\n response = result;\n } catch (err) {\n // If the exception is because user intentionally\n // cancelled the request, do not modify the exception\n // so that clients can identify the exception correctly.\n if (this.isCancelError(err)) throw err;\n response = {\n data: {},\n errors: [\n new (0, $fHcz3.GraphQLError)(err.message, null, null, null, null, err)\n ]\n };\n }\n const { errors: errors } = response;\n if (errors && errors.length) throw (0, $027iw.repackageUnauthError)(response);\n return response;\n }\n /**\n * Checks to see if an error thrown is from an api request cancellation\n * @param {any} error - Any error\n * @return {boolean} - A boolean indicating if the error was from an api request cancellation\n */ isCancelError(error) {\n return this._api.isCancelErrorREST(error);\n }\n /**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns - A boolean indicating if the request was cancelled\n */ cancel(request, message) {\n return this._api.cancelREST(request, message);\n }\n _graphqlSubscribe(amplify, { query: query, variables: variables, authMode: authMode }, additionalHeaders = {}, customUserAgentDetails, authToken) {\n const config = (0, $4un4F.resolveConfig)(amplify);\n /**\n * Retrieve library options from Amplify configuration.\n * `libraryConfigHeaders` are from the Amplify configuration options,\n * and will not be overwritten by other custom headers. These are *not*\n * the same as `additionalHeaders`, which are custom headers that are\n * either 1)included when configuring the API client or 2) passed along\n * with individual requests.\n */ const { headers: libraryConfigHeaders } = (0, $2bSZt.resolveLibraryOptions)(amplify);\n return this.appSyncRealTime.subscribe({\n query: (0, $3o9dz.print)(query),\n variables: variables,\n appSyncGraphqlEndpoint: config?.endpoint,\n region: config?.region,\n authenticationType: authMode || config?.defaultAuthMode,\n apiKey: config?.apiKey,\n additionalHeaders: additionalHeaders,\n authToken: authToken,\n libraryConfigHeaders: libraryConfigHeaders\n }, customUserAgentDetails).pipe((0, $fT695.catchError)((e)=>{\n if (e.errors) throw (0, $027iw.repackageUnauthError)(e);\n throw e;\n }));\n }\n}\nconst $417d5886f54fa8b9$export$ed344e8d198d4142 = new $417d5886f54fa8b9$export$c3e852ee609522ad();\n\n});\nparcelRegister(\"fHcz3\", function(module, exports) {\n\n$parcel$export(module.exports, \"GraphQLError\", () => $52f13d37c0305dc6$export$92d6ed0888e7cb7f);\n\nvar $cryJ5 = parcelRequire(\"cryJ5\");\n\nvar $6Kxrr = parcelRequire(\"6Kxrr\");\n\nvar $8hTIi = parcelRequire(\"8hTIi\");\n\nvar $2snEf = parcelRequire(\"2snEf\");\nfunction $52f13d37c0305dc6$var$_typeof(obj) {\n \"@babel/helpers - typeof\";\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") $52f13d37c0305dc6$var$_typeof = function _typeof(obj) {\n return typeof obj;\n };\n else $52f13d37c0305dc6$var$_typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n return $52f13d37c0305dc6$var$_typeof(obj);\n}\nfunction $52f13d37c0305dc6$var$ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function(sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction $52f13d37c0305dc6$var$_objectSpread(target) {\n for(var i = 1; i < arguments.length; i++){\n var source = arguments[i] != null ? arguments[i] : {};\n if (i % 2) $52f13d37c0305dc6$var$ownKeys(Object(source), true).forEach(function(key) {\n $52f13d37c0305dc6$var$_defineProperty(target, key, source[key]);\n });\n else if (Object.getOwnPropertyDescriptors) Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n else $52f13d37c0305dc6$var$ownKeys(Object(source)).forEach(function(key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nfunction $52f13d37c0305dc6$var$_defineProperty(obj, key, value) {\n if (key in obj) Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n else obj[key] = value;\n return obj;\n}\nfunction $52f13d37c0305dc6$var$_classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction $52f13d37c0305dc6$var$_defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction $52f13d37c0305dc6$var$_createClass(Constructor, protoProps, staticProps) {\n if (protoProps) $52f13d37c0305dc6$var$_defineProperties(Constructor.prototype, protoProps);\n if (staticProps) $52f13d37c0305dc6$var$_defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction $52f13d37c0305dc6$var$_inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) throw new TypeError(\"Super expression must either be null or a function\");\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) $52f13d37c0305dc6$var$_setPrototypeOf(subClass, superClass);\n}\nfunction $52f13d37c0305dc6$var$_createSuper(Derived) {\n var hasNativeReflectConstruct = $52f13d37c0305dc6$var$_isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = $52f13d37c0305dc6$var$_getPrototypeOf(Derived), result;\n if (hasNativeReflectConstruct) {\n var NewTarget = $52f13d37c0305dc6$var$_getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else result = Super.apply(this, arguments);\n return $52f13d37c0305dc6$var$_possibleConstructorReturn(this, result);\n };\n}\nfunction $52f13d37c0305dc6$var$_possibleConstructorReturn(self, call) {\n if (call && ($52f13d37c0305dc6$var$_typeof(call) === \"object\" || typeof call === \"function\")) return call;\n return $52f13d37c0305dc6$var$_assertThisInitialized(self);\n}\nfunction $52f13d37c0305dc6$var$_assertThisInitialized(self) {\n if (self === void 0) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return self;\n}\nfunction $52f13d37c0305dc6$var$_wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n $52f13d37c0305dc6$var$_wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !$52f13d37c0305dc6$var$_isNativeFunction(Class)) return Class;\n if (typeof Class !== \"function\") throw new TypeError(\"Super expression must either be null or a function\");\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n _cache.set(Class, Wrapper);\n }\n function Wrapper() {\n return $52f13d37c0305dc6$var$_construct(Class, arguments, $52f13d37c0305dc6$var$_getPrototypeOf(this).constructor);\n }\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return $52f13d37c0305dc6$var$_setPrototypeOf(Wrapper, Class);\n };\n return $52f13d37c0305dc6$var$_wrapNativeSuper(Class);\n}\nfunction $52f13d37c0305dc6$var$_construct(Parent, args, Class) {\n if ($52f13d37c0305dc6$var$_isNativeReflectConstruct()) $52f13d37c0305dc6$var$_construct = Reflect.construct;\n else $52f13d37c0305dc6$var$_construct = function _construct(Parent, args, Class) {\n var a = [\n null\n ];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) $52f13d37c0305dc6$var$_setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n return $52f13d37c0305dc6$var$_construct.apply(null, arguments);\n}\nfunction $52f13d37c0305dc6$var$_isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function() {}));\n return true;\n } catch (e) {\n return false;\n }\n}\nfunction $52f13d37c0305dc6$var$_isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\nfunction $52f13d37c0305dc6$var$_setPrototypeOf(o, p) {\n $52f13d37c0305dc6$var$_setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return $52f13d37c0305dc6$var$_setPrototypeOf(o, p);\n}\nfunction $52f13d37c0305dc6$var$_getPrototypeOf(o) {\n $52f13d37c0305dc6$var$_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return $52f13d37c0305dc6$var$_getPrototypeOf(o);\n}\nvar $52f13d37c0305dc6$export$92d6ed0888e7cb7f = /*#__PURE__*/ function(_Error) {\n $52f13d37c0305dc6$var$_inherits(GraphQLError, _Error);\n var _super = $52f13d37c0305dc6$var$_createSuper(GraphQLError);\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 * 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 * An array of GraphQL AST Nodes corresponding to this error.\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 * An array of character offsets within the source GraphQL document\n * which correspond to this error.\n */ /**\n * The original error thrown from a field resolver during execution.\n */ /**\n * Extension fields to add to the formatted error.\n */ function GraphQLError(message, nodes, source, positions, path, originalError, extensions) {\n var _nodeLocations, _nodeLocations2, _nodeLocations3;\n var _this;\n $52f13d37c0305dc6$var$_classCallCheck(this, GraphQLError);\n _this = _super.call(this, message);\n _this.name = \"GraphQLError\";\n _this.originalError = originalError !== null && originalError !== void 0 ? originalError : undefined; // Compute list of blame nodes.\n _this.nodes = $52f13d37c0305dc6$var$undefinedIfEmpty(Array.isArray(nodes) ? nodes : nodes ? [\n nodes\n ] : undefined);\n var nodeLocations = [];\n for(var _i2 = 0, _ref3 = (_this$nodes = _this.nodes) !== null && _this$nodes !== void 0 ? _this$nodes : []; _i2 < _ref3.length; _i2++){\n var _this$nodes;\n var _ref4 = _ref3[_i2];\n var loc = _ref4.loc;\n if (loc != null) nodeLocations.push(loc);\n }\n nodeLocations = $52f13d37c0305dc6$var$undefinedIfEmpty(nodeLocations); // Compute locations in the source for the given nodes/positions.\n _this.source = source !== null && source !== void 0 ? source : (_nodeLocations = nodeLocations) === null || _nodeLocations === void 0 ? void 0 : _nodeLocations[0].source;\n _this.positions = positions !== null && positions !== void 0 ? positions : (_nodeLocations2 = nodeLocations) === null || _nodeLocations2 === void 0 ? void 0 : _nodeLocations2.map(function(loc) {\n return loc.start;\n });\n _this.locations = positions && source ? positions.map(function(pos) {\n return (0, $8hTIi.getLocation)(source, pos);\n }) : (_nodeLocations3 = nodeLocations) === null || _nodeLocations3 === void 0 ? void 0 : _nodeLocations3.map(function(loc) {\n return (0, $8hTIi.getLocation)(loc.source, loc.start);\n });\n _this.path = path !== null && path !== void 0 ? path : undefined;\n var originalExtensions = originalError === null || originalError === void 0 ? void 0 : originalError.extensions;\n if (extensions == null && (0, $cryJ5.default)(originalExtensions)) _this.extensions = $52f13d37c0305dc6$var$_objectSpread({}, originalExtensions);\n else _this.extensions = extensions !== null && extensions !== void 0 ? extensions : {};\n // By being enumerable, JSON.stringify will include bellow properties in the resulting output.\n // This ensures that the simplest possible GraphQL service adheres to the spec.\n Object.defineProperties($52f13d37c0305dc6$var$_assertThisInitialized(_this), {\n message: {\n enumerable: true\n },\n locations: {\n enumerable: _this.locations != null\n },\n path: {\n enumerable: _this.path != null\n },\n extensions: {\n enumerable: _this.extensions != null && Object.keys(_this.extensions).length > 0\n },\n name: {\n enumerable: false\n },\n nodes: {\n enumerable: false\n },\n source: {\n enumerable: false\n },\n positions: {\n enumerable: false\n },\n originalError: {\n enumerable: false\n }\n }); // Include (non-enumerable) stack trace.\n if (originalError !== null && originalError !== void 0 && originalError.stack) {\n Object.defineProperty($52f13d37c0305dc6$var$_assertThisInitialized(_this), \"stack\", {\n value: originalError.stack,\n writable: true,\n configurable: true\n });\n return $52f13d37c0305dc6$var$_possibleConstructorReturn(_this);\n } // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\n if (Error.captureStackTrace) Error.captureStackTrace($52f13d37c0305dc6$var$_assertThisInitialized(_this), GraphQLError);\n else Object.defineProperty($52f13d37c0305dc6$var$_assertThisInitialized(_this), \"stack\", {\n value: Error().stack,\n writable: true,\n configurable: true\n });\n return _this;\n }\n $52f13d37c0305dc6$var$_createClass(GraphQLError, [\n {\n key: \"toString\",\n value: function toString() {\n return $52f13d37c0305dc6$export$55ee1551a3f962e6(this);\n } // FIXME: workaround to not break chai comparisons, should be remove in v16\n },\n {\n key: (0, $6Kxrr.SYMBOL_TO_STRING_TAG),\n get: function get() {\n return \"Object\";\n }\n }\n ]);\n return GraphQLError;\n}(/*#__PURE__*/ $52f13d37c0305dc6$var$_wrapNativeSuper(Error));\nfunction $52f13d37c0305dc6$var$undefinedIfEmpty(array) {\n return array === undefined || array.length === 0 ? undefined : array;\n}\nfunction $52f13d37c0305dc6$export$55ee1551a3f962e6(error) {\n var output = error.message;\n if (error.nodes) for(var _i4 = 0, _error$nodes2 = error.nodes; _i4 < _error$nodes2.length; _i4++){\n var node = _error$nodes2[_i4];\n if (node.loc) output += \"\\n\\n\" + (0, $2snEf.printLocation)(node.loc);\n }\n else if (error.source && error.locations) for(var _i6 = 0, _error$locations2 = error.locations; _i6 < _error$locations2.length; _i6++){\n var location = _error$locations2[_i6];\n output += \"\\n\\n\" + (0, $2snEf.printSourceLocation)(error.source, location);\n }\n return output;\n}\n\n});\nparcelRegister(\"cryJ5\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $f419306d4be7fb23$export$2e2bcd8739ae039);\nfunction $f419306d4be7fb23$var$_typeof(obj) {\n \"@babel/helpers - typeof\";\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") $f419306d4be7fb23$var$_typeof = function _typeof(obj) {\n return typeof obj;\n };\n else $f419306d4be7fb23$var$_typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n return $f419306d4be7fb23$var$_typeof(obj);\n}\nfunction $f419306d4be7fb23$export$2e2bcd8739ae039(value) {\n return $f419306d4be7fb23$var$_typeof(value) == \"object\" && value !== null;\n}\n\n});\n\nparcelRegister(\"6Kxrr\", function(module, exports) {\n\n$parcel$export(module.exports, \"SYMBOL_TO_STRING_TAG\", () => $38898675a98013dc$export$5deadc579ccc7c9c);\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')\nvar $38898675a98013dc$export$f6cdee3c26d6da57 = typeof Symbol === \"function\" && Symbol.iterator != null ? Symbol.iterator : \"@@iterator\"; // In ES2017 (or a polyfilled) environment, this will be Symbol.asyncIterator\nvar $38898675a98013dc$export$8d0083df0471478e = typeof Symbol === \"function\" && Symbol.asyncIterator != null ? Symbol.asyncIterator : \"@@asyncIterator\"; // istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\nvar $38898675a98013dc$export$5deadc579ccc7c9c = typeof Symbol === \"function\" && Symbol.toStringTag != null ? Symbol.toStringTag : \"@@toStringTag\";\n\n});\n\nparcelRegister(\"8hTIi\", function(module, exports) {\n\n$parcel$export(module.exports, \"getLocation\", () => $151337c9f32f7005$export$e7fd20fad3cf4b5f);\n/**\n * Represents a location in a Source.\n */ /**\n * Takes a Source and a UTF-8 character offset, and returns the corresponding\n * line and column as a SourceLocation.\n */ function $151337c9f32f7005$export$e7fd20fad3cf4b5f(source, position) {\n var lineRegexp = /\\r\\n|[\\n\\r]/g;\n var line = 1;\n var column = position + 1;\n var match;\n while((match = lineRegexp.exec(source.body)) && match.index < position){\n line += 1;\n column = position + 1 - (match.index + match[0].length);\n }\n return {\n line: line,\n column: column\n };\n}\n\n});\n\nparcelRegister(\"2snEf\", function(module, exports) {\n\n$parcel$export(module.exports, \"printLocation\", () => $a45c53fbf464b798$export$96a9681e539deed);\n$parcel$export(module.exports, \"printSourceLocation\", () => $a45c53fbf464b798$export$867940333fd9f869);\n\nvar $8hTIi = parcelRequire(\"8hTIi\");\nfunction $a45c53fbf464b798$export$96a9681e539deed(location) {\n return $a45c53fbf464b798$export$867940333fd9f869(location.source, (0, $8hTIi.getLocation)(location.source, location.start));\n}\nfunction $a45c53fbf464b798$export$867940333fd9f869(source, sourceLocation) {\n var firstLineColumnOffset = source.locationOffset.column - 1;\n var body = $a45c53fbf464b798$var$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 if (locationLine.length > 120) {\n var subLineIndex = Math.floor(columnNum / 80);\n var subLineColumnNum = columnNum % 80;\n var subLines = [];\n for(var i = 0; i < locationLine.length; i += 80)subLines.push(locationLine.slice(i, i + 80));\n return locationStr + $a45c53fbf464b798$var$printPrefixedLines([\n [\n \"\".concat(lineNum),\n subLines[0]\n ]\n ].concat(subLines.slice(1, subLineIndex + 1).map(function(subLine) {\n return [\n \"\",\n subLine\n ];\n }), [\n [\n \" \",\n $a45c53fbf464b798$var$whitespace(subLineColumnNum - 1) + \"^\"\n ],\n [\n \"\",\n subLines[subLineIndex + 1]\n ]\n ]));\n }\n return locationStr + $a45c53fbf464b798$var$printPrefixedLines([\n [\n \"\".concat(lineNum - 1),\n lines[lineIndex - 1]\n ],\n [\n \"\".concat(lineNum),\n locationLine\n ],\n [\n \"\",\n $a45c53fbf464b798$var$whitespace(columnNum - 1) + \"^\"\n ],\n [\n \"\".concat(lineNum + 1),\n lines[lineIndex + 1]\n ]\n ]);\n}\nfunction $a45c53fbf464b798$var$printPrefixedLines(lines) {\n var existingLines = lines.filter(function(_ref) {\n var _ = _ref[0], 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], line = _ref3[1];\n return $a45c53fbf464b798$var$leftPad(padLen, prefix) + (line ? \" | \" + line : \" |\");\n }).join(\"\\n\");\n}\nfunction $a45c53fbf464b798$var$whitespace(len) {\n return Array(len + 1).join(\" \");\n}\nfunction $a45c53fbf464b798$var$leftPad(len, str) {\n return $a45c53fbf464b798$var$whitespace(len - str.length) + str;\n}\n\n});\n\n\nparcelRegister(\"8DJ2k\", function(module, exports) {\n\n$parcel$export(module.exports, \"parse\", () => $0013c7ab45cf197d$export$98e6a39c04603d36);\n\nvar $egTVJ = parcelRequire(\"egTVJ\");\n\nvar $hu3w4 = parcelRequire(\"hu3w4\");\n\nvar $8r1qs = parcelRequire(\"8r1qs\");\n\nvar $bQgNI = parcelRequire(\"bQgNI\");\n\nvar $1i7FZ = parcelRequire(\"1i7FZ\");\n\nvar $5zW8K = parcelRequire(\"5zW8K\");\n\nvar $dtMcr = parcelRequire(\"dtMcr\");\nfunction $0013c7ab45cf197d$export$98e6a39c04603d36(source, options) {\n var parser = new $0013c7ab45cf197d$export$7acfa6ed01010e37(source, options);\n return parser.parseDocument();\n}\nfunction $0013c7ab45cf197d$export$5303528d1070ff6f(source, options) {\n var parser = new $0013c7ab45cf197d$export$7acfa6ed01010e37(source, options);\n parser.expectToken((0, $bQgNI.TokenKind).SOF);\n var value = parser.parseValueLiteral(false);\n parser.expectToken((0, $bQgNI.TokenKind).EOF);\n return value;\n}\nfunction $0013c7ab45cf197d$export$28b8f402ccc88182(source, options) {\n var parser = new $0013c7ab45cf197d$export$7acfa6ed01010e37(source, options);\n parser.expectToken((0, $bQgNI.TokenKind).SOF);\n var type = parser.parseTypeReference();\n parser.expectToken((0, $bQgNI.TokenKind).EOF);\n return type;\n}\nvar $0013c7ab45cf197d$export$7acfa6ed01010e37 = /*#__PURE__*/ function() {\n function Parser(source, options) {\n var sourceObj = (0, $1i7FZ.isSource)(source) ? source : new (0, $1i7FZ.Source)(source);\n this._lexer = new (0, $dtMcr.Lexer)(sourceObj);\n this._options = options;\n }\n /**\n * Converts a name lex token into a name parse node.\n */ var _proto = Parser.prototype;\n _proto.parseName = function parseName() {\n var token = this.expectToken((0, $bQgNI.TokenKind).NAME);\n return {\n kind: (0, $hu3w4.Kind).NAME,\n value: token.value,\n loc: this.loc(token)\n };\n } // Implements the parsing rules in the Document section.\n /**\n * Document : Definition+\n */ ;\n _proto.parseDocument = function parseDocument() {\n var start = this._lexer.token;\n return {\n kind: (0, $hu3w4.Kind).DOCUMENT,\n definitions: this.many((0, $bQgNI.TokenKind).SOF, this.parseDefinition, (0, $bQgNI.TokenKind).EOF),\n loc: this.loc(start)\n };\n } /**\n * Definition :\n * - ExecutableDefinition\n * - TypeSystemDefinition\n * - TypeSystemExtension\n *\n * ExecutableDefinition :\n * - OperationDefinition\n * - FragmentDefinition\n */ ;\n _proto.parseDefinition = function parseDefinition() {\n if (this.peek((0, $bQgNI.TokenKind).NAME)) switch(this._lexer.token.value){\n case \"query\":\n case \"mutation\":\n case \"subscription\":\n return this.parseOperationDefinition();\n case \"fragment\":\n return this.parseFragmentDefinition();\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 case \"extend\":\n return this.parseTypeSystemExtension();\n }\n else if (this.peek((0, $bQgNI.TokenKind).BRACE_L)) return this.parseOperationDefinition();\n else if (this.peekDescription()) return this.parseTypeSystemDefinition();\n throw this.unexpected();\n } // Implements the parsing rules in the Operations section.\n /**\n * OperationDefinition :\n * - SelectionSet\n * - OperationType Name? VariableDefinitions? Directives? SelectionSet\n */ ;\n _proto.parseOperationDefinition = function parseOperationDefinition() {\n var start = this._lexer.token;\n if (this.peek((0, $bQgNI.TokenKind).BRACE_L)) return {\n kind: (0, $hu3w4.Kind).OPERATION_DEFINITION,\n operation: \"query\",\n name: undefined,\n variableDefinitions: [],\n directives: [],\n selectionSet: this.parseSelectionSet(),\n loc: this.loc(start)\n };\n var operation = this.parseOperationType();\n var name;\n if (this.peek((0, $bQgNI.TokenKind).NAME)) name = this.parseName();\n return {\n kind: (0, $hu3w4.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 * OperationType : one of query mutation subscription\n */ ;\n _proto.parseOperationType = function parseOperationType() {\n var operationToken = this.expectToken((0, $bQgNI.TokenKind).NAME);\n switch(operationToken.value){\n case \"query\":\n return \"query\";\n case \"mutation\":\n return \"mutation\";\n case \"subscription\":\n return \"subscription\";\n }\n throw this.unexpected(operationToken);\n } /**\n * VariableDefinitions : ( VariableDefinition+ )\n */ ;\n _proto.parseVariableDefinitions = function parseVariableDefinitions() {\n return this.optionalMany((0, $bQgNI.TokenKind).PAREN_L, this.parseVariableDefinition, (0, $bQgNI.TokenKind).PAREN_R);\n } /**\n * VariableDefinition : Variable : Type DefaultValue? Directives[Const]?\n */ ;\n _proto.parseVariableDefinition = function parseVariableDefinition() {\n var start = this._lexer.token;\n return {\n kind: (0, $hu3w4.Kind).VARIABLE_DEFINITION,\n variable: this.parseVariable(),\n type: (this.expectToken((0, $bQgNI.TokenKind).COLON), this.parseTypeReference()),\n defaultValue: this.expectOptionalToken((0, $bQgNI.TokenKind).EQUALS) ? this.parseValueLiteral(true) : undefined,\n directives: this.parseDirectives(true),\n loc: this.loc(start)\n };\n } /**\n * Variable : $ Name\n */ ;\n _proto.parseVariable = function parseVariable() {\n var start = this._lexer.token;\n this.expectToken((0, $bQgNI.TokenKind).DOLLAR);\n return {\n kind: (0, $hu3w4.Kind).VARIABLE,\n name: this.parseName(),\n loc: this.loc(start)\n };\n } /**\n * SelectionSet : { Selection+ }\n */ ;\n _proto.parseSelectionSet = function parseSelectionSet() {\n var start = this._lexer.token;\n return {\n kind: (0, $hu3w4.Kind).SELECTION_SET,\n selections: this.many((0, $bQgNI.TokenKind).BRACE_L, this.parseSelection, (0, $bQgNI.TokenKind).BRACE_R),\n loc: this.loc(start)\n };\n } /**\n * Selection :\n * - Field\n * - FragmentSpread\n * - InlineFragment\n */ ;\n _proto.parseSelection = function parseSelection() {\n return this.peek((0, $bQgNI.TokenKind).SPREAD) ? this.parseFragment() : this.parseField();\n } /**\n * Field : Alias? Name Arguments? Directives? SelectionSet?\n *\n * Alias : Name :\n */ ;\n _proto.parseField = function parseField() {\n var start = this._lexer.token;\n var nameOrAlias = this.parseName();\n var alias;\n var name;\n if (this.expectOptionalToken((0, $bQgNI.TokenKind).COLON)) {\n alias = nameOrAlias;\n name = this.parseName();\n } else name = nameOrAlias;\n return {\n kind: (0, $hu3w4.Kind).FIELD,\n alias: alias,\n name: name,\n arguments: this.parseArguments(false),\n directives: this.parseDirectives(false),\n selectionSet: this.peek((0, $bQgNI.TokenKind).BRACE_L) ? this.parseSelectionSet() : undefined,\n loc: this.loc(start)\n };\n } /**\n * Arguments[Const] : ( Argument[?Const]+ )\n */ ;\n _proto.parseArguments = function parseArguments(isConst) {\n var item = isConst ? this.parseConstArgument : this.parseArgument;\n return this.optionalMany((0, $bQgNI.TokenKind).PAREN_L, item, (0, $bQgNI.TokenKind).PAREN_R);\n } /**\n * Argument[Const] : Name : Value[?Const]\n */ ;\n _proto.parseArgument = function parseArgument() {\n var start = this._lexer.token;\n var name = this.parseName();\n this.expectToken((0, $bQgNI.TokenKind).COLON);\n return {\n kind: (0, $hu3w4.Kind).ARGUMENT,\n name: name,\n value: this.parseValueLiteral(false),\n loc: this.loc(start)\n };\n };\n _proto.parseConstArgument = function parseConstArgument() {\n var start = this._lexer.token;\n return {\n kind: (0, $hu3w4.Kind).ARGUMENT,\n name: this.parseName(),\n value: (this.expectToken((0, $bQgNI.TokenKind).COLON), this.parseValueLiteral(true)),\n loc: this.loc(start)\n };\n } // Implements the parsing rules in the Fragments section.\n /**\n * Corresponds to both FragmentSpread and InlineFragment in the spec.\n *\n * FragmentSpread : ... FragmentName Directives?\n *\n * InlineFragment : ... TypeCondition? Directives? SelectionSet\n */ ;\n _proto.parseFragment = function parseFragment() {\n var start = this._lexer.token;\n this.expectToken((0, $bQgNI.TokenKind).SPREAD);\n var hasTypeCondition = this.expectOptionalKeyword(\"on\");\n if (!hasTypeCondition && this.peek((0, $bQgNI.TokenKind).NAME)) return {\n kind: (0, $hu3w4.Kind).FRAGMENT_SPREAD,\n name: this.parseFragmentName(),\n directives: this.parseDirectives(false),\n loc: this.loc(start)\n };\n return {\n kind: (0, $hu3w4.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 * FragmentDefinition :\n * - fragment FragmentName on TypeCondition Directives? SelectionSet\n *\n * TypeCondition : NamedType\n */ ;\n _proto.parseFragmentDefinition = function parseFragmentDefinition() {\n var _this$_options;\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 if (((_this$_options = this._options) === null || _this$_options === void 0 ? void 0 : _this$_options.experimentalFragmentVariables) === true) return {\n kind: (0, $hu3w4.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 return {\n kind: (0, $hu3w4.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 * FragmentName : Name but not `on`\n */ ;\n _proto.parseFragmentName = function parseFragmentName() {\n if (this._lexer.token.value === \"on\") throw this.unexpected();\n return this.parseName();\n } // Implements the parsing rules in the Values section.\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 _proto.parseValueLiteral = function parseValueLiteral(isConst) {\n var token = this._lexer.token;\n switch(token.kind){\n case (0, $bQgNI.TokenKind).BRACKET_L:\n return this.parseList(isConst);\n case (0, $bQgNI.TokenKind).BRACE_L:\n return this.parseObject(isConst);\n case (0, $bQgNI.TokenKind).INT:\n this._lexer.advance();\n return {\n kind: (0, $hu3w4.Kind).INT,\n value: token.value,\n loc: this.loc(token)\n };\n case (0, $bQgNI.TokenKind).FLOAT:\n this._lexer.advance();\n return {\n kind: (0, $hu3w4.Kind).FLOAT,\n value: token.value,\n loc: this.loc(token)\n };\n case (0, $bQgNI.TokenKind).STRING:\n case (0, $bQgNI.TokenKind).BLOCK_STRING:\n return this.parseStringLiteral();\n case (0, $bQgNI.TokenKind).NAME:\n this._lexer.advance();\n switch(token.value){\n case \"true\":\n return {\n kind: (0, $hu3w4.Kind).BOOLEAN,\n value: true,\n loc: this.loc(token)\n };\n case \"false\":\n return {\n kind: (0, $hu3w4.Kind).BOOLEAN,\n value: false,\n loc: this.loc(token)\n };\n case \"null\":\n return {\n kind: (0, $hu3w4.Kind).NULL,\n loc: this.loc(token)\n };\n default:\n return {\n kind: (0, $hu3w4.Kind).ENUM,\n value: token.value,\n loc: this.loc(token)\n };\n }\n case (0, $bQgNI.TokenKind).DOLLAR:\n if (!isConst) return this.parseVariable();\n break;\n }\n throw this.unexpected();\n };\n _proto.parseStringLiteral = function parseStringLiteral() {\n var token = this._lexer.token;\n this._lexer.advance();\n return {\n kind: (0, $hu3w4.Kind).STRING,\n value: token.value,\n block: token.kind === (0, $bQgNI.TokenKind).BLOCK_STRING,\n loc: this.loc(token)\n };\n } /**\n * ListValue[Const] :\n * - [ ]\n * - [ Value[?Const]+ ]\n */ ;\n _proto.parseList = function parseList(isConst) {\n var _this = this;\n var start = this._lexer.token;\n var item = function item() {\n return _this.parseValueLiteral(isConst);\n };\n return {\n kind: (0, $hu3w4.Kind).LIST,\n values: this.any((0, $bQgNI.TokenKind).BRACKET_L, item, (0, $bQgNI.TokenKind).BRACKET_R),\n loc: this.loc(start)\n };\n } /**\n * ObjectValue[Const] :\n * - { }\n * - { ObjectField[?Const]+ }\n */ ;\n _proto.parseObject = function parseObject(isConst) {\n var _this2 = this;\n var start = this._lexer.token;\n var item = function item() {\n return _this2.parseObjectField(isConst);\n };\n return {\n kind: (0, $hu3w4.Kind).OBJECT,\n fields: this.any((0, $bQgNI.TokenKind).BRACE_L, item, (0, $bQgNI.TokenKind).BRACE_R),\n loc: this.loc(start)\n };\n } /**\n * ObjectField[Const] : Name : Value[?Const]\n */ ;\n _proto.parseObjectField = function parseObjectField(isConst) {\n var start = this._lexer.token;\n var name = this.parseName();\n this.expectToken((0, $bQgNI.TokenKind).COLON);\n return {\n kind: (0, $hu3w4.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 * Directives[Const] : Directive[?Const]+\n */ ;\n _proto.parseDirectives = function parseDirectives(isConst) {\n var directives = [];\n while(this.peek((0, $bQgNI.TokenKind).AT))directives.push(this.parseDirective(isConst));\n return directives;\n } /**\n * Directive[Const] : @ Name Arguments[?Const]?\n */ ;\n _proto.parseDirective = function parseDirective(isConst) {\n var start = this._lexer.token;\n this.expectToken((0, $bQgNI.TokenKind).AT);\n return {\n kind: (0, $hu3w4.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 * Type :\n * - NamedType\n * - ListType\n * - NonNullType\n */ ;\n _proto.parseTypeReference = function parseTypeReference() {\n var start = this._lexer.token;\n var type;\n if (this.expectOptionalToken((0, $bQgNI.TokenKind).BRACKET_L)) {\n type = this.parseTypeReference();\n this.expectToken((0, $bQgNI.TokenKind).BRACKET_R);\n type = {\n kind: (0, $hu3w4.Kind).LIST_TYPE,\n type: type,\n loc: this.loc(start)\n };\n } else type = this.parseNamedType();\n if (this.expectOptionalToken((0, $bQgNI.TokenKind).BANG)) return {\n kind: (0, $hu3w4.Kind).NON_NULL_TYPE,\n type: type,\n loc: this.loc(start)\n };\n return type;\n } /**\n * NamedType : Name\n */ ;\n _proto.parseNamedType = function parseNamedType() {\n var start = this._lexer.token;\n return {\n kind: (0, $hu3w4.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 * TypeSystemDefinition :\n * - SchemaDefinition\n * - TypeDefinition\n * - DirectiveDefinition\n *\n * TypeDefinition :\n * - ScalarTypeDefinition\n * - ObjectTypeDefinition\n * - InterfaceTypeDefinition\n * - UnionTypeDefinition\n * - EnumTypeDefinition\n * - InputObjectTypeDefinition\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 if (keywordToken.kind === (0, $bQgNI.TokenKind).NAME) switch(keywordToken.value){\n case \"schema\":\n return this.parseSchemaDefinition();\n case \"scalar\":\n return this.parseScalarTypeDefinition();\n case \"type\":\n return this.parseObjectTypeDefinition();\n case \"interface\":\n return this.parseInterfaceTypeDefinition();\n case \"union\":\n return this.parseUnionTypeDefinition();\n case \"enum\":\n return this.parseEnumTypeDefinition();\n case \"input\":\n return this.parseInputObjectTypeDefinition();\n case \"directive\":\n return this.parseDirectiveDefinition();\n }\n throw this.unexpected(keywordToken);\n };\n _proto.peekDescription = function peekDescription() {\n return this.peek((0, $bQgNI.TokenKind).STRING) || this.peek((0, $bQgNI.TokenKind).BLOCK_STRING);\n } /**\n * Description : StringValue\n */ ;\n _proto.parseDescription = function parseDescription() {\n if (this.peekDescription()) return this.parseStringLiteral();\n } /**\n * SchemaDefinition : Description? schema Directives[Const]? { OperationTypeDefinition+ }\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((0, $bQgNI.TokenKind).BRACE_L, this.parseOperationTypeDefinition, (0, $bQgNI.TokenKind).BRACE_R);\n return {\n kind: (0, $hu3w4.Kind).SCHEMA_DEFINITION,\n description: description,\n directives: directives,\n operationTypes: operationTypes,\n loc: this.loc(start)\n };\n } /**\n * OperationTypeDefinition : OperationType : NamedType\n */ ;\n _proto.parseOperationTypeDefinition = function parseOperationTypeDefinition() {\n var start = this._lexer.token;\n var operation = this.parseOperationType();\n this.expectToken((0, $bQgNI.TokenKind).COLON);\n var type = this.parseNamedType();\n return {\n kind: (0, $hu3w4.Kind).OPERATION_TYPE_DEFINITION,\n operation: operation,\n type: type,\n loc: this.loc(start)\n };\n } /**\n * ScalarTypeDefinition : Description? scalar Name Directives[Const]?\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: (0, $hu3w4.Kind).SCALAR_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n } /**\n * ObjectTypeDefinition :\n * Description?\n * type Name ImplementsInterfaces? Directives[Const]? FieldsDefinition?\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: (0, $hu3w4.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 * ImplementsInterfaces :\n * - implements `&`? NamedType\n * - ImplementsInterfaces & NamedType\n */ ;\n _proto.parseImplementsInterfaces = function parseImplementsInterfaces() {\n var _this$_options2;\n if (!this.expectOptionalKeyword(\"implements\")) return [];\n if (((_this$_options2 = this._options) === null || _this$_options2 === void 0 ? void 0 : _this$_options2.allowLegacySDLImplementsInterfaces) === true) {\n var types = []; // Optional leading ampersand\n this.expectOptionalToken((0, $bQgNI.TokenKind).AMP);\n do types.push(this.parseNamedType());\n while (this.expectOptionalToken((0, $bQgNI.TokenKind).AMP) || this.peek((0, $bQgNI.TokenKind).NAME));\n return types;\n }\n return this.delimitedMany((0, $bQgNI.TokenKind).AMP, this.parseNamedType);\n } /**\n * FieldsDefinition : { FieldDefinition+ }\n */ ;\n _proto.parseFieldsDefinition = function parseFieldsDefinition() {\n var _this$_options3;\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((0, $bQgNI.TokenKind).BRACE_L) && this._lexer.lookahead().kind === (0, $bQgNI.TokenKind).BRACE_R) {\n this._lexer.advance();\n this._lexer.advance();\n return [];\n }\n return this.optionalMany((0, $bQgNI.TokenKind).BRACE_L, this.parseFieldDefinition, (0, $bQgNI.TokenKind).BRACE_R);\n } /**\n * FieldDefinition :\n * - Description? Name ArgumentsDefinition? : Type Directives[Const]?\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((0, $bQgNI.TokenKind).COLON);\n var type = this.parseTypeReference();\n var directives = this.parseDirectives(true);\n return {\n kind: (0, $hu3w4.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 * ArgumentsDefinition : ( InputValueDefinition+ )\n */ ;\n _proto.parseArgumentDefs = function parseArgumentDefs() {\n return this.optionalMany((0, $bQgNI.TokenKind).PAREN_L, this.parseInputValueDef, (0, $bQgNI.TokenKind).PAREN_R);\n } /**\n * InputValueDefinition :\n * - Description? Name : Type DefaultValue? Directives[Const]?\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((0, $bQgNI.TokenKind).COLON);\n var type = this.parseTypeReference();\n var defaultValue;\n if (this.expectOptionalToken((0, $bQgNI.TokenKind).EQUALS)) defaultValue = this.parseValueLiteral(true);\n var directives = this.parseDirectives(true);\n return {\n kind: (0, $hu3w4.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 * InterfaceTypeDefinition :\n * - Description? interface Name Directives[Const]? FieldsDefinition?\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: (0, $hu3w4.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 * UnionTypeDefinition :\n * - Description? union Name Directives[Const]? UnionMemberTypes?\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: (0, $hu3w4.Kind).UNION_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n types: types,\n loc: this.loc(start)\n };\n } /**\n * UnionMemberTypes :\n * - = `|`? NamedType\n * - UnionMemberTypes | NamedType\n */ ;\n _proto.parseUnionMemberTypes = function parseUnionMemberTypes() {\n return this.expectOptionalToken((0, $bQgNI.TokenKind).EQUALS) ? this.delimitedMany((0, $bQgNI.TokenKind).PIPE, this.parseNamedType) : [];\n } /**\n * EnumTypeDefinition :\n * - Description? enum Name Directives[Const]? EnumValuesDefinition?\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: (0, $hu3w4.Kind).ENUM_TYPE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n values: values,\n loc: this.loc(start)\n };\n } /**\n * EnumValuesDefinition : { EnumValueDefinition+ }\n */ ;\n _proto.parseEnumValuesDefinition = function parseEnumValuesDefinition() {\n return this.optionalMany((0, $bQgNI.TokenKind).BRACE_L, this.parseEnumValueDefinition, (0, $bQgNI.TokenKind).BRACE_R);\n } /**\n * EnumValueDefinition : Description? EnumValue Directives[Const]?\n *\n * EnumValue : Name\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: (0, $hu3w4.Kind).ENUM_VALUE_DEFINITION,\n description: description,\n name: name,\n directives: directives,\n loc: this.loc(start)\n };\n } /**\n * InputObjectTypeDefinition :\n * - Description? input Name Directives[Const]? InputFieldsDefinition?\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: (0, $hu3w4.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 * InputFieldsDefinition : { InputValueDefinition+ }\n */ ;\n _proto.parseInputFieldsDefinition = function parseInputFieldsDefinition() {\n return this.optionalMany((0, $bQgNI.TokenKind).BRACE_L, this.parseInputValueDef, (0, $bQgNI.TokenKind).BRACE_R);\n } /**\n * TypeSystemExtension :\n * - SchemaExtension\n * - TypeExtension\n *\n * TypeExtension :\n * - ScalarTypeExtension\n * - ObjectTypeExtension\n * - InterfaceTypeExtension\n * - UnionTypeExtension\n * - EnumTypeExtension\n * - InputObjectTypeDefinition\n */ ;\n _proto.parseTypeSystemExtension = function parseTypeSystemExtension() {\n var keywordToken = this._lexer.lookahead();\n if (keywordToken.kind === (0, $bQgNI.TokenKind).NAME) switch(keywordToken.value){\n case \"schema\":\n return this.parseSchemaExtension();\n case \"scalar\":\n return this.parseScalarTypeExtension();\n case \"type\":\n return this.parseObjectTypeExtension();\n case \"interface\":\n return this.parseInterfaceTypeExtension();\n case \"union\":\n return this.parseUnionTypeExtension();\n case \"enum\":\n return this.parseEnumTypeExtension();\n case \"input\":\n return this.parseInputObjectTypeExtension();\n }\n throw this.unexpected(keywordToken);\n } /**\n * SchemaExtension :\n * - extend schema Directives[Const]? { OperationTypeDefinition+ }\n * - extend schema Directives[Const]\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((0, $bQgNI.TokenKind).BRACE_L, this.parseOperationTypeDefinition, (0, $bQgNI.TokenKind).BRACE_R);\n if (directives.length === 0 && operationTypes.length === 0) throw this.unexpected();\n return {\n kind: (0, $hu3w4.Kind).SCHEMA_EXTENSION,\n directives: directives,\n operationTypes: operationTypes,\n loc: this.loc(start)\n };\n } /**\n * ScalarTypeExtension :\n * - extend scalar Name Directives[Const]\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 if (directives.length === 0) throw this.unexpected();\n return {\n kind: (0, $hu3w4.Kind).SCALAR_TYPE_EXTENSION,\n name: name,\n directives: directives,\n loc: this.loc(start)\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 _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 if (interfaces.length === 0 && directives.length === 0 && fields.length === 0) throw this.unexpected();\n return {\n kind: (0, $hu3w4.Kind).OBJECT_TYPE_EXTENSION,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\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 _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 if (interfaces.length === 0 && directives.length === 0 && fields.length === 0) throw this.unexpected();\n return {\n kind: (0, $hu3w4.Kind).INTERFACE_TYPE_EXTENSION,\n name: name,\n interfaces: interfaces,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n } /**\n * UnionTypeExtension :\n * - extend union Name Directives[Const]? UnionMemberTypes\n * - extend union Name Directives[Const]\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 if (directives.length === 0 && types.length === 0) throw this.unexpected();\n return {\n kind: (0, $hu3w4.Kind).UNION_TYPE_EXTENSION,\n name: name,\n directives: directives,\n types: types,\n loc: this.loc(start)\n };\n } /**\n * EnumTypeExtension :\n * - extend enum Name Directives[Const]? EnumValuesDefinition\n * - extend enum Name Directives[Const]\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 if (directives.length === 0 && values.length === 0) throw this.unexpected();\n return {\n kind: (0, $hu3w4.Kind).ENUM_TYPE_EXTENSION,\n name: name,\n directives: directives,\n values: values,\n loc: this.loc(start)\n };\n } /**\n * InputObjectTypeExtension :\n * - extend input Name Directives[Const]? InputFieldsDefinition\n * - extend input Name Directives[Const]\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 if (directives.length === 0 && fields.length === 0) throw this.unexpected();\n return {\n kind: (0, $hu3w4.Kind).INPUT_OBJECT_TYPE_EXTENSION,\n name: name,\n directives: directives,\n fields: fields,\n loc: this.loc(start)\n };\n } /**\n * DirectiveDefinition :\n * - Description? directive @ Name ArgumentsDefinition? `repeatable`? on DirectiveLocations\n */ ;\n _proto.parseDirectiveDefinition = function parseDirectiveDefinition() {\n var start = this._lexer.token;\n var description = this.parseDescription();\n this.expectKeyword(\"directive\");\n this.expectToken((0, $bQgNI.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: (0, $hu3w4.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 * DirectiveLocations :\n * - `|`? DirectiveLocation\n * - DirectiveLocations | DirectiveLocation\n */ ;\n _proto.parseDirectiveLocations = function parseDirectiveLocations() {\n return this.delimitedMany((0, $bQgNI.TokenKind).PIPE, this.parseDirectiveLocation);\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 _proto.parseDirectiveLocation = function parseDirectiveLocation() {\n var start = this._lexer.token;\n var name = this.parseName();\n if ((0, $5zW8K.DirectiveLocation)[name.value] !== undefined) return name;\n throw this.unexpected(start);\n } // Core parsing utility functions\n /**\n * Returns a location object, used to identify the place in the source that created a given parsed object.\n */ ;\n _proto.loc = function loc(startToken) {\n var _this$_options4;\n if (((_this$_options4 = this._options) === null || _this$_options4 === void 0 ? void 0 : _this$_options4.noLocation) !== true) return new (0, $8r1qs.Location)(startToken, this._lexer.lastToken, this._lexer.source);\n } /**\n * Determines if the next token is of a given kind\n */ ;\n _proto.peek = function peek(kind) {\n return this._lexer.token.kind === kind;\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 _proto.expectToken = function expectToken(kind) {\n var token = this._lexer.token;\n if (token.kind === kind) {\n this._lexer.advance();\n return token;\n }\n throw (0, $egTVJ.syntaxError)(this._lexer.source, token.start, \"Expected \".concat($0013c7ab45cf197d$var$getTokenKindDesc(kind), \", found \").concat($0013c7ab45cf197d$var$getTokenDesc(token), \".\"));\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 _proto.expectOptionalToken = function expectOptionalToken(kind) {\n var token = this._lexer.token;\n if (token.kind === kind) {\n this._lexer.advance();\n return token;\n }\n return undefined;\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 _proto.expectKeyword = function expectKeyword(value) {\n var token = this._lexer.token;\n if (token.kind === (0, $bQgNI.TokenKind).NAME && token.value === value) this._lexer.advance();\n else throw (0, $egTVJ.syntaxError)(this._lexer.source, token.start, 'Expected \"'.concat(value, '\", found ').concat($0013c7ab45cf197d$var$getTokenDesc(token), \".\"));\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 _proto.expectOptionalKeyword = function expectOptionalKeyword(value) {\n var token = this._lexer.token;\n if (token.kind === (0, $bQgNI.TokenKind).NAME && token.value === value) {\n this._lexer.advance();\n return true;\n }\n return false;\n } /**\n * Helper function for creating an error when an unexpected lexed token is encountered.\n */ ;\n _proto.unexpected = function unexpected(atToken) {\n var token = atToken !== null && atToken !== void 0 ? atToken : this._lexer.token;\n return (0, $egTVJ.syntaxError)(this._lexer.source, token.start, \"Unexpected \".concat($0013c7ab45cf197d$var$getTokenDesc(token), \".\"));\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 _proto.any = function any(openKind, parseFn, closeKind) {\n this.expectToken(openKind);\n var nodes = [];\n while(!this.expectOptionalToken(closeKind))nodes.push(parseFn.call(this));\n return nodes;\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 _proto.optionalMany = function optionalMany(openKind, parseFn, closeKind) {\n if (this.expectOptionalToken(openKind)) {\n var nodes = [];\n do nodes.push(parseFn.call(this));\n while (!this.expectOptionalToken(closeKind));\n return nodes;\n }\n return [];\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 _proto.many = function many(openKind, parseFn, closeKind) {\n this.expectToken(openKind);\n var nodes = [];\n do nodes.push(parseFn.call(this));\n while (!this.expectOptionalToken(closeKind));\n return nodes;\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 _proto.delimitedMany = function delimitedMany(delimiterKind, parseFn) {\n this.expectOptionalToken(delimiterKind);\n var nodes = [];\n do nodes.push(parseFn.call(this));\n while (this.expectOptionalToken(delimiterKind));\n return nodes;\n };\n return Parser;\n}();\n/**\n * A helper function to describe a token as a string for debugging.\n */ function $0013c7ab45cf197d$var$getTokenDesc(token) {\n var value = token.value;\n return $0013c7ab45cf197d$var$getTokenKindDesc(token.kind) + (value != null ? ' \"'.concat(value, '\"') : \"\");\n}\n/**\n * A helper function to describe a token kind as a string for debugging.\n */ function $0013c7ab45cf197d$var$getTokenKindDesc(kind) {\n return (0, $dtMcr.isPunctuatorTokenKind)(kind) ? '\"'.concat(kind, '\"') : kind;\n}\n\n});\nparcelRegister(\"egTVJ\", function(module, exports) {\n\n$parcel$export(module.exports, \"syntaxError\", () => $ddf6b9f696b0d6b2$export$bbee0c6176c019d4);\n\nvar $fHcz3 = parcelRequire(\"fHcz3\");\nfunction $ddf6b9f696b0d6b2$export$bbee0c6176c019d4(source, position, description) {\n return new (0, $fHcz3.GraphQLError)(\"Syntax Error: \".concat(description), undefined, source, [\n position\n ]);\n}\n\n});\n\nparcelRegister(\"hu3w4\", function(module, exports) {\n\n$parcel$export(module.exports, \"Kind\", () => $b7b8db97a7d116fe$export$a84bdc57c5122798);\n/**\n * The set of allowed kind values for AST nodes.\n */ var $b7b8db97a7d116fe$export$a84bdc57c5122798 = 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 * The enum type representing the possible kind values of AST nodes.\n */ \n\n});\n\nparcelRegister(\"8r1qs\", function(module, exports) {\n\n$parcel$export(module.exports, \"Location\", () => $11b06753ce50693f$export$18a2be9195644f38);\n$parcel$export(module.exports, \"Token\", () => $11b06753ce50693f$export$50792b0e93539fde);\n$parcel$export(module.exports, \"isNode\", () => $11b06753ce50693f$export$8ee0fc9ee280b4ee);\n\nvar $hnUO7 = parcelRequire(\"hnUO7\");\nvar $11b06753ce50693f$export$18a2be9195644f38 = /*#__PURE__*/ function() {\n /**\n * The character offset at which this Node begins.\n */ /**\n * The character offset at which this Node ends.\n */ /**\n * The Token at which this Node begins.\n */ /**\n * The Token at which this Node ends.\n */ /**\n * The Source document the AST represents.\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 var _proto = Location.prototype;\n _proto.toJSON = function toJSON() {\n return {\n start: this.start,\n end: this.end\n };\n };\n return Location;\n}(); // Print a simplified form when appearing in `inspect` and `util.inspect`.\n(0, $hnUO7.default)($11b06753ce50693f$export$18a2be9195644f38);\nvar $11b06753ce50693f$export$50792b0e93539fde = /*#__PURE__*/ function() {\n /**\n * The kind of Token.\n */ /**\n * The character offset at which this Node begins.\n */ /**\n * The character offset at which this Node ends.\n */ /**\n * The 1-indexed line number on which this Token appears.\n */ /**\n * The 1-indexed column number at which this Token begins.\n */ /**\n * For non-punctuation tokens, represents the interpreted value of the token.\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 */ 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 var _proto2 = Token.prototype;\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 return Token;\n}(); // Print a simplified form when appearing in `inspect` and `util.inspect`.\n(0, $hnUO7.default)($11b06753ce50693f$export$50792b0e93539fde);\nfunction $11b06753ce50693f$export$8ee0fc9ee280b4ee(maybeNode) {\n return maybeNode != null && typeof maybeNode.kind === \"string\";\n} /**\n * The list of all possible AST node types.\n */ \n\n});\nparcelRegister(\"hnUO7\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $79a8edb1a7f74fed$export$2e2bcd8739ae039);\n\nvar $l3zHt = parcelRequire(\"l3zHt\");\n\nvar $7qP7Z = parcelRequire(\"7qP7Z\");\nfunction $79a8edb1a7f74fed$export$2e2bcd8739ae039(classObject) {\n var fn = classObject.prototype.toJSON;\n typeof fn === \"function\" || (0, $l3zHt.default)(0);\n classObject.prototype.inspect = fn; // istanbul ignore else (See: 'https://github.com/graphql/graphql-js/issues/2317')\n if (0, $7qP7Z.default) classObject.prototype[0, $7qP7Z.default] = fn;\n}\n\n});\nparcelRegister(\"l3zHt\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $0989dd6156f69013$export$2e2bcd8739ae039);\nfunction $0989dd6156f69013$export$2e2bcd8739ae039(condition, message) {\n var booleanCondition = Boolean(condition); // istanbul ignore else (See transformation done in './resources/inlineInvariant.js')\n if (!booleanCondition) throw new Error(message != null ? message : \"Unexpected invariant triggered.\");\n}\n\n});\n\nparcelRegister(\"7qP7Z\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $d7a3e222a9fb30c4$export$2e2bcd8739ae039);\n// istanbul ignore next (See: 'https://github.com/graphql/graphql-js/issues/2317')\nvar $d7a3e222a9fb30c4$var$nodejsCustomInspectSymbol = typeof Symbol === \"function\" && typeof Symbol.for === \"function\" ? Symbol.for(\"nodejs.util.inspect.custom\") : undefined;\nvar $d7a3e222a9fb30c4$export$2e2bcd8739ae039 = $d7a3e222a9fb30c4$var$nodejsCustomInspectSymbol;\n\n});\n\n\n\nparcelRegister(\"bQgNI\", function(module, exports) {\n\n$parcel$export(module.exports, \"TokenKind\", () => $ac240aaa94caf15d$export$8b9d26ab11394711);\n/**\n * An exported enum describing the different kinds of tokens that the\n * lexer emits.\n */ var $ac240aaa94caf15d$export$8b9d26ab11394711 = 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 * The enum type representing the token kinds values.\n */ \n\n});\n\nparcelRegister(\"1i7FZ\", function(module, exports) {\n\n$parcel$export(module.exports, \"Source\", () => $1ff584847d3a412c$export$1d2df86270c81ecb);\n$parcel$export(module.exports, \"isSource\", () => $1ff584847d3a412c$export$75135ee9ed6e435b);\n\nvar $6Kxrr = parcelRequire(\"6Kxrr\");\n\nvar $gHwk7 = parcelRequire(\"gHwk7\");\n\nvar $lDltR = parcelRequire(\"lDltR\");\n\nvar $7NKAi = parcelRequire(\"7NKAi\");\nfunction $1ff584847d3a412c$var$_defineProperties(target, props) {\n for(var i = 0; i < props.length; i++){\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction $1ff584847d3a412c$var$_createClass(Constructor, protoProps, staticProps) {\n if (protoProps) $1ff584847d3a412c$var$_defineProperties(Constructor.prototype, protoProps);\n if (staticProps) $1ff584847d3a412c$var$_defineProperties(Constructor, staticProps);\n return Constructor;\n}\nvar $1ff584847d3a412c$export$1d2df86270c81ecb = /*#__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\" || (0, $lDltR.default)(0, \"Body must be a string. Received: \".concat((0, $gHwk7.default)(body), \".\"));\n this.body = body;\n this.name = name;\n this.locationOffset = locationOffset;\n this.locationOffset.line > 0 || (0, $lDltR.default)(0, \"line in locationOffset is 1-indexed and must be positive.\");\n this.locationOffset.column > 0 || (0, $lDltR.default)(0, \"column in locationOffset is 1-indexed and must be positive.\");\n } // $FlowFixMe[unsupported-syntax] Flow doesn't support computed properties yet\n $1ff584847d3a412c$var$_createClass(Source, [\n {\n key: (0, $6Kxrr.SYMBOL_TO_STRING_TAG),\n get: function get() {\n return \"Source\";\n }\n }\n ]);\n return Source;\n}();\nfunction $1ff584847d3a412c$export$75135ee9ed6e435b(source) {\n return (0, $7NKAi.default)(source, $1ff584847d3a412c$export$1d2df86270c81ecb);\n}\n\n});\nparcelRegister(\"gHwk7\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $9541a54af6a37409$export$2e2bcd8739ae039);\n\nvar $7qP7Z = parcelRequire(\"7qP7Z\");\nfunction $9541a54af6a37409$var$_typeof(obj) {\n \"@babel/helpers - typeof\";\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") $9541a54af6a37409$var$_typeof = function _typeof(obj) {\n return typeof obj;\n };\n else $9541a54af6a37409$var$_typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n return $9541a54af6a37409$var$_typeof(obj);\n}\nvar $9541a54af6a37409$var$MAX_ARRAY_LENGTH = 10;\nvar $9541a54af6a37409$var$MAX_RECURSIVE_DEPTH = 2;\nfunction $9541a54af6a37409$export$2e2bcd8739ae039(value) {\n return $9541a54af6a37409$var$formatValue(value, []);\n}\nfunction $9541a54af6a37409$var$formatValue(value, seenValues) {\n switch($9541a54af6a37409$var$_typeof(value)){\n case \"string\":\n return JSON.stringify(value);\n case \"function\":\n return value.name ? \"[function \".concat(value.name, \"]\") : \"[function]\";\n case \"object\":\n if (value === null) return \"null\";\n return $9541a54af6a37409$var$formatObjectValue(value, seenValues);\n default:\n return String(value);\n }\n}\nfunction $9541a54af6a37409$var$formatObjectValue(value, previouslySeenValues) {\n if (previouslySeenValues.indexOf(value) !== -1) return \"[Circular]\";\n var seenValues = [].concat(previouslySeenValues, [\n value\n ]);\n var customInspectFn = $9541a54af6a37409$var$getCustomFn(value);\n if (customInspectFn !== undefined) {\n var customValue = customInspectFn.call(value); // check for infinite recursion\n if (customValue !== value) return typeof customValue === \"string\" ? customValue : $9541a54af6a37409$var$formatValue(customValue, seenValues);\n } else if (Array.isArray(value)) return $9541a54af6a37409$var$formatArray(value, seenValues);\n return $9541a54af6a37409$var$formatObject(value, seenValues);\n}\nfunction $9541a54af6a37409$var$formatObject(object, seenValues) {\n var keys = Object.keys(object);\n if (keys.length === 0) return \"{}\";\n if (seenValues.length > $9541a54af6a37409$var$MAX_RECURSIVE_DEPTH) return \"[\" + $9541a54af6a37409$var$getObjectTag(object) + \"]\";\n var properties = keys.map(function(key) {\n var value = $9541a54af6a37409$var$formatValue(object[key], seenValues);\n return key + \": \" + value;\n });\n return \"{ \" + properties.join(\", \") + \" }\";\n}\nfunction $9541a54af6a37409$var$formatArray(array, seenValues) {\n if (array.length === 0) return \"[]\";\n if (seenValues.length > $9541a54af6a37409$var$MAX_RECURSIVE_DEPTH) return \"[Array]\";\n var len = Math.min($9541a54af6a37409$var$MAX_ARRAY_LENGTH, array.length);\n var remaining = array.length - len;\n var items = [];\n for(var i = 0; i < len; ++i)items.push($9541a54af6a37409$var$formatValue(array[i], seenValues));\n if (remaining === 1) items.push(\"... 1 more item\");\n else if (remaining > 1) items.push(\"... \".concat(remaining, \" more items\"));\n return \"[\" + items.join(\", \") + \"]\";\n}\nfunction $9541a54af6a37409$var$getCustomFn(object) {\n var customInspectFn = object[String((0, $7qP7Z.default))];\n if (typeof customInspectFn === \"function\") return customInspectFn;\n if (typeof object.inspect === \"function\") return object.inspect;\n}\nfunction $9541a54af6a37409$var$getObjectTag(object) {\n var tag = Object.prototype.toString.call(object).replace(/^\\[object /, \"\").replace(/]$/, \"\");\n if (tag === \"Object\" && typeof object.constructor === \"function\") {\n var name = object.constructor.name;\n if (typeof name === \"string\" && name !== \"\") return name;\n }\n return tag;\n}\n\n});\n\nparcelRegister(\"lDltR\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $8beb5260c793fc92$export$2e2bcd8739ae039);\nfunction $8beb5260c793fc92$export$2e2bcd8739ae039(condition, message) {\n var booleanCondition = Boolean(condition); // istanbul ignore else (See transformation done in './resources/inlineInvariant.js')\n if (!booleanCondition) throw new Error(message);\n}\n\n});\n\nparcelRegister(\"7NKAi\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $c44107310810d751$export$2e2bcd8739ae039);\n\nfunction $c44107310810d751$var$_typeof(obj) {\n \"@babel/helpers - typeof\";\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") $c44107310810d751$var$_typeof = function _typeof(obj) {\n return typeof obj;\n };\n else $c44107310810d751$var$_typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n return $c44107310810d751$var$_typeof(obj);\n}\nvar /**\n * A replacement for instanceof which includes an error warning when multi-realm\n * constructors are detected.\n */ // See: https://expressjs.com/en/advanced/best-practice-performance.html#set-node_env-to-production\n// See: https://webpack.js.org/guides/production/\n$c44107310810d751$export$2e2bcd8739ae039 = // eslint-disable-next-line no-shadow\nfunction instanceOf(value, constructor) {\n return value instanceof constructor;\n};\n\n});\n\n\nparcelRegister(\"5zW8K\", function(module, exports) {\n\n$parcel$export(module.exports, \"DirectiveLocation\", () => $289bf729a82494c6$export$b45ffd2948484c41);\n/**\n * The set of allowed directive location values.\n */ var $289bf729a82494c6$export$b45ffd2948484c41 = 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 * The enum type representing the directive location values.\n */ \n\n});\n\nparcelRegister(\"dtMcr\", function(module, exports) {\n\n$parcel$export(module.exports, \"Lexer\", () => $971bc50063303b32$export$6168dc8908a6c652);\n$parcel$export(module.exports, \"isPunctuatorTokenKind\", () => $971bc50063303b32$export$59ac0f4da287406a);\n\nvar $egTVJ = parcelRequire(\"egTVJ\");\n\nvar $8r1qs = parcelRequire(\"8r1qs\");\n\nvar $bQgNI = parcelRequire(\"bQgNI\");\n\nvar $7tbLu = parcelRequire(\"7tbLu\");\nvar $971bc50063303b32$export$6168dc8908a6c652 = /*#__PURE__*/ function() {\n /**\n * The previously focused non-ignored token.\n */ /**\n * The currently focused non-ignored token.\n */ /**\n * The (1-indexed) line containing the current token.\n */ /**\n * The character offset at which the current line begins.\n */ function Lexer(source) {\n var startOfFileToken = new (0, $8r1qs.Token)((0, $bQgNI.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 */ var _proto = Lexer.prototype;\n _proto.advance = function advance() {\n this.lastToken = this.token;\n var token = this.token = this.lookahead();\n return token;\n } /**\n * Looks ahead and returns the next non-ignored token, but does not change\n * the state of Lexer.\n */ ;\n _proto.lookahead = function lookahead() {\n var token = this.token;\n if (token.kind !== (0, $bQgNI.TokenKind).EOF) do {\n var _token$next;\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 = $971bc50063303b32$var$readToken(this, token);\n }while (token.kind === (0, $bQgNI.TokenKind).COMMENT);\n return token;\n };\n return Lexer;\n}();\nfunction $971bc50063303b32$export$59ac0f4da287406a(kind) {\n return kind === (0, $bQgNI.TokenKind).BANG || kind === (0, $bQgNI.TokenKind).DOLLAR || kind === (0, $bQgNI.TokenKind).AMP || kind === (0, $bQgNI.TokenKind).PAREN_L || kind === (0, $bQgNI.TokenKind).PAREN_R || kind === (0, $bQgNI.TokenKind).SPREAD || kind === (0, $bQgNI.TokenKind).COLON || kind === (0, $bQgNI.TokenKind).EQUALS || kind === (0, $bQgNI.TokenKind).AT || kind === (0, $bQgNI.TokenKind).BRACKET_L || kind === (0, $bQgNI.TokenKind).BRACKET_R || kind === (0, $bQgNI.TokenKind).BRACE_L || kind === (0, $bQgNI.TokenKind).PIPE || kind === (0, $bQgNI.TokenKind).BRACE_R;\n}\nfunction $971bc50063303b32$var$printCharCode(code) {\n return isNaN(code) ? (0, $bQgNI.TokenKind).EOF : code < 0x007f ? JSON.stringify(String.fromCharCode(code)) : '\"\\\\u'.concat((\"00\" + code.toString(16).toUpperCase()).slice(-4), '\"');\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 */ function $971bc50063303b32$var$readToken(lexer, prev) {\n var source = lexer.source;\n var body = source.body;\n var bodyLength = body.length;\n var pos = prev.end;\n while(pos < bodyLength){\n var code = body.charCodeAt(pos);\n var _line = lexer.line;\n var _col = 1 + pos - lexer.lineStart; // SourceCharacter\n switch(code){\n case 0xfeff:\n case 9:\n case 32:\n case 44:\n // ,\n ++pos;\n continue;\n case 10:\n // \\n\n ++pos;\n ++lexer.line;\n lexer.lineStart = pos;\n continue;\n case 13:\n // \\r\n if (body.charCodeAt(pos + 1) === 10) pos += 2;\n else ++pos;\n ++lexer.line;\n lexer.lineStart = pos;\n continue;\n case 33:\n // !\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).BANG, pos, pos + 1, _line, _col, prev);\n case 35:\n // #\n return $971bc50063303b32$var$readComment(source, pos, _line, _col, prev);\n case 36:\n // $\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).DOLLAR, pos, pos + 1, _line, _col, prev);\n case 38:\n // &\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).AMP, pos, pos + 1, _line, _col, prev);\n case 40:\n // (\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).PAREN_L, pos, pos + 1, _line, _col, prev);\n case 41:\n // )\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).PAREN_R, pos, pos + 1, _line, _col, prev);\n case 46:\n // .\n if (body.charCodeAt(pos + 1) === 46 && body.charCodeAt(pos + 2) === 46) return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).SPREAD, pos, pos + 3, _line, _col, prev);\n break;\n case 58:\n // :\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).COLON, pos, pos + 1, _line, _col, prev);\n case 61:\n // =\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).EQUALS, pos, pos + 1, _line, _col, prev);\n case 64:\n // @\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).AT, pos, pos + 1, _line, _col, prev);\n case 91:\n // [\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).BRACKET_L, pos, pos + 1, _line, _col, prev);\n case 93:\n // ]\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).BRACKET_R, pos, pos + 1, _line, _col, prev);\n case 123:\n // {\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).BRACE_L, pos, pos + 1, _line, _col, prev);\n case 124:\n // |\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).PIPE, pos, pos + 1, _line, _col, prev);\n case 125:\n // }\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).BRACE_R, pos, pos + 1, _line, _col, prev);\n case 34:\n // \"\n if (body.charCodeAt(pos + 1) === 34 && body.charCodeAt(pos + 2) === 34) return $971bc50063303b32$var$readBlockString(source, pos, _line, _col, prev, lexer);\n return $971bc50063303b32$var$readString(source, pos, _line, _col, prev);\n case 45:\n case 48:\n case 49:\n case 50:\n case 51:\n case 52:\n case 53:\n case 54:\n case 55:\n case 56:\n case 57:\n // 9\n return $971bc50063303b32$var$readNumber(source, pos, code, _line, _col, prev);\n case 65:\n case 66:\n case 67:\n case 68:\n case 69:\n case 70:\n case 71:\n case 72:\n case 73:\n case 74:\n case 75:\n case 76:\n case 77:\n case 78:\n case 79:\n case 80:\n case 81:\n case 82:\n case 83:\n case 84:\n case 85:\n case 86:\n case 87:\n case 88:\n case 89:\n case 90:\n case 95:\n case 97:\n case 98:\n case 99:\n case 100:\n case 101:\n case 102:\n case 103:\n case 104:\n case 105:\n case 106:\n case 107:\n case 108:\n case 109:\n case 110:\n case 111:\n case 112:\n case 113:\n case 114:\n case 115:\n case 116:\n case 117:\n case 118:\n case 119:\n case 120:\n case 121:\n case 122:\n // z\n return $971bc50063303b32$var$readName(source, pos, _line, _col, prev);\n }\n throw (0, $egTVJ.syntaxError)(source, pos, $971bc50063303b32$var$unexpectedCharacterMessage(code));\n }\n var line = lexer.line;\n var col = 1 + pos - lexer.lineStart;\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).EOF, bodyLength, bodyLength, line, col, prev);\n}\n/**\n * Report a message that an unexpected character was encountered.\n */ function $971bc50063303b32$var$unexpectedCharacterMessage(code) {\n if (code < 0x0020 && code !== 0x0009 && code !== 0x000a && code !== 0x000d) return \"Cannot contain the invalid character \".concat($971bc50063303b32$var$printCharCode(code), \".\");\n if (code === 39) // '\n return \"Unexpected single quote character ('), did you mean to use a double quote (\\\")?\";\n return \"Cannot parse the unexpected character \".concat($971bc50063303b32$var$printCharCode(code), \".\");\n}\n/**\n * Reads a comment token from the source file.\n *\n * #[\\u0009\\u0020-\\uFFFF]*\n */ function $971bc50063303b32$var$readComment(source, start, line, col, prev) {\n var body = source.body;\n var code;\n var position = start;\n do code = body.charCodeAt(++position);\n while (!isNaN(code) && (code > 0x001f || code === 0x0009));\n return new (0, $8r1qs.Token)((0, $bQgNI.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 */ function $971bc50063303b32$var$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 if (code === 45) // -\n code = body.charCodeAt(++position);\n if (code === 48) {\n // 0\n code = body.charCodeAt(++position);\n if (code >= 48 && code <= 57) throw (0, $egTVJ.syntaxError)(source, position, \"Invalid number, unexpected digit after 0: \".concat($971bc50063303b32$var$printCharCode(code), \".\"));\n } else {\n position = $971bc50063303b32$var$readDigits(source, position, code);\n code = body.charCodeAt(position);\n }\n if (code === 46) {\n // .\n isFloat = true;\n code = body.charCodeAt(++position);\n position = $971bc50063303b32$var$readDigits(source, position, code);\n code = body.charCodeAt(position);\n }\n if (code === 69 || code === 101) {\n // E e\n isFloat = true;\n code = body.charCodeAt(++position);\n if (code === 43 || code === 45) // + -\n code = body.charCodeAt(++position);\n position = $971bc50063303b32$var$readDigits(source, position, code);\n code = body.charCodeAt(position);\n } // Numbers cannot be followed by . or NameStart\n if (code === 46 || $971bc50063303b32$var$isNameStart(code)) throw (0, $egTVJ.syntaxError)(source, position, \"Invalid number, expected digit but got: \".concat($971bc50063303b32$var$printCharCode(code), \".\"));\n return new (0, $8r1qs.Token)(isFloat ? (0, $bQgNI.TokenKind).FLOAT : (0, $bQgNI.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 */ function $971bc50063303b32$var$readDigits(source, start, firstCode) {\n var body = source.body;\n var position = start;\n var code = firstCode;\n if (code >= 48 && code <= 57) {\n // 0 - 9\n do code = body.charCodeAt(++position);\n while (code >= 48 && code <= 57); // 0 - 9\n return position;\n }\n throw (0, $egTVJ.syntaxError)(source, position, \"Invalid number, expected digit but got: \".concat($971bc50063303b32$var$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 */ function $971bc50063303b32$var$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 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 (0, $8r1qs.Token)((0, $bQgNI.TokenKind).STRING, start, position + 1, line, col, prev, value);\n } // SourceCharacter\n if (code < 0x0020 && code !== 0x0009) throw (0, $egTVJ.syntaxError)(source, position, \"Invalid character within String: \".concat($971bc50063303b32$var$printCharCode(code), \".\"));\n ++position;\n if (code === 92) {\n // \\\n value += body.slice(chunkStart, position - 1);\n code = body.charCodeAt(position);\n switch(code){\n case 34:\n value += '\"';\n break;\n case 47:\n value += \"/\";\n break;\n case 92:\n value += \"\\\\\";\n break;\n case 98:\n value += \"\\b\";\n break;\n case 102:\n value += \"\\f\";\n break;\n case 110:\n value += \"\\n\";\n break;\n case 114:\n value += \"\\r\";\n break;\n case 116:\n value += \"\t\";\n break;\n case 117:\n // uXXXX\n var charCode = $971bc50063303b32$var$uniCharCode(body.charCodeAt(position + 1), body.charCodeAt(position + 2), body.charCodeAt(position + 3), body.charCodeAt(position + 4));\n if (charCode < 0) {\n var invalidSequence = body.slice(position + 1, position + 5);\n throw (0, $egTVJ.syntaxError)(source, position, \"Invalid character escape sequence: \\\\u\".concat(invalidSequence, \".\"));\n }\n value += String.fromCharCode(charCode);\n position += 4;\n break;\n default:\n throw (0, $egTVJ.syntaxError)(source, position, \"Invalid character escape sequence: \\\\\".concat(String.fromCharCode(code), \".\"));\n }\n ++position;\n chunkStart = position;\n }\n }\n throw (0, $egTVJ.syntaxError)(source, position, \"Unterminated string.\");\n}\n/**\n * Reads a block string token from the source file.\n *\n * \"\"\"(\"?\"?(\\\\\"\"\"|\\\\(?!=\"\"\")|[^\"\\\\]))*\"\"\"\n */ function $971bc50063303b32$var$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 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 (0, $8r1qs.Token)((0, $bQgNI.TokenKind).BLOCK_STRING, start, position + 3, line, col, prev, (0, $7tbLu.dedentBlockStringValue)(rawValue));\n } // SourceCharacter\n if (code < 0x0020 && code !== 0x0009 && code !== 0x000a && code !== 0x000d) throw (0, $egTVJ.syntaxError)(source, position, \"Invalid character within String: \".concat($971bc50063303b32$var$printCharCode(code), \".\"));\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) position += 2;\n else ++position;\n ++lexer.line;\n lexer.lineStart = position;\n } else if (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 ++position;\n }\n throw (0, $egTVJ.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 */ function $971bc50063303b32$var$uniCharCode(a, b, c, d) {\n return $971bc50063303b32$var$char2hex(a) << 12 | $971bc50063303b32$var$char2hex(b) << 8 | $971bc50063303b32$var$char2hex(c) << 4 | $971bc50063303b32$var$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 */ function $971bc50063303b32$var$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 */ function $971bc50063303b32$var$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 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 ))++position;\n return new (0, $8r1qs.Token)((0, $bQgNI.TokenKind).NAME, start, position, line, col, prev, body.slice(start, position));\n} // _ A-Z a-z\nfunction $971bc50063303b32$var$isNameStart(code) {\n return code === 95 || code >= 65 && code <= 90 || code >= 97 && code <= 122;\n}\n\n});\nparcelRegister(\"7tbLu\", function(module, exports) {\n\n$parcel$export(module.exports, \"dedentBlockStringValue\", () => $a51b3e37e1f6e888$export$fd88c0b652c46ccc);\n$parcel$export(module.exports, \"printBlockString\", () => $a51b3e37e1f6e888$export$adb6ca997eeb1f45);\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 */ function $a51b3e37e1f6e888$export$fd88c0b652c46ccc(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 var commonIndent = $a51b3e37e1f6e888$export$3c95bfdc680af0c(rawString);\n if (commonIndent !== 0) for(var i = 1; i < lines.length; i++)lines[i] = lines[i].slice(commonIndent);\n // Remove leading and trailing blank lines.\n var startLine = 0;\n while(startLine < lines.length && $a51b3e37e1f6e888$var$isBlank(lines[startLine]))++startLine;\n var endLine = lines.length;\n while(endLine > startLine && $a51b3e37e1f6e888$var$isBlank(lines[endLine - 1]))--endLine;\n // Return a string of the lines joined with U+000A.\n return lines.slice(startLine, endLine).join(\"\\n\");\n}\nfunction $a51b3e37e1f6e888$var$isBlank(str) {\n for(var i = 0; i < str.length; ++i){\n if (str[i] !== \" \" && str[i] !== \"\t\") return false;\n }\n return true;\n}\nfunction $a51b3e37e1f6e888$export$3c95bfdc680af0c(value) {\n var _commonIndent;\n var isFirstLine = true;\n var isEmptyLine = true;\n var indent = 0;\n var commonIndent = null;\n for(var i = 0; i < value.length; ++i)switch(value.charCodeAt(i)){\n case 13:\n // \\r\n if (value.charCodeAt(i + 1) === 10) ++i; // skip \\r\\n as one symbol\n // falls through\n case 10:\n // \\n\n isFirstLine = false;\n isEmptyLine = true;\n indent = 0;\n break;\n case 9:\n case 32:\n // \n ++indent;\n break;\n default:\n if (isEmptyLine && !isFirstLine && (commonIndent === null || indent < commonIndent)) commonIndent = indent;\n isEmptyLine = false;\n }\n return (_commonIndent = commonIndent) !== null && _commonIndent !== void 0 ? _commonIndent : 0;\n}\nfunction $a51b3e37e1f6e888$export$adb6ca997eeb1f45(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 if (printAsMultipleLines && !(isSingleLine && hasLeadingSpace)) result += \"\\n\" + indentation;\n result += indentation ? value.replace(/\\n/g, \"\\n\" + indentation) : value;\n if (printAsMultipleLines) result += \"\\n\";\n return '\"\"\"' + result.replace(/\"\"\"/g, '\\\\\"\"\"') + '\"\"\"';\n}\n\n});\n\n\n\nparcelRegister(\"3o9dz\", function(module, exports) {\n\n$parcel$export(module.exports, \"print\", () => $e6602c9cee6df4a2$export$c2d084dc44961371);\n\nvar $9m7aI = parcelRequire(\"9m7aI\");\n\nvar $7tbLu = parcelRequire(\"7tbLu\");\nfunction $e6602c9cee6df4a2$export$c2d084dc44961371(ast) {\n return (0, $9m7aI.visit)(ast, {\n leave: $e6602c9cee6df4a2$var$printDocASTReducer\n });\n}\nvar $e6602c9cee6df4a2$var$MAX_LINE_LENGTH = 80; // TODO: provide better type coverage in future\nvar $e6602c9cee6df4a2$var$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 $e6602c9cee6df4a2$var$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 = $e6602c9cee6df4a2$var$wrap(\"(\", $e6602c9cee6df4a2$var$join(node.variableDefinitions, \", \"), \")\");\n var directives = $e6602c9cee6df4a2$var$join(node.directives, \" \");\n var selectionSet = node.selectionSet; // Anonymous queries with no directives or variable definitions can use\n // the query short form.\n return !name && !directives && !varDefs && op === \"query\" ? selectionSet : $e6602c9cee6df4a2$var$join([\n op,\n $e6602c9cee6df4a2$var$join([\n name,\n varDefs\n ]),\n directives,\n selectionSet\n ], \" \");\n },\n VariableDefinition: function VariableDefinition(_ref) {\n var variable = _ref.variable, type = _ref.type, defaultValue = _ref.defaultValue, directives = _ref.directives;\n return variable + \": \" + type + $e6602c9cee6df4a2$var$wrap(\" = \", defaultValue) + $e6602c9cee6df4a2$var$wrap(\" \", $e6602c9cee6df4a2$var$join(directives, \" \"));\n },\n SelectionSet: function SelectionSet(_ref2) {\n var selections = _ref2.selections;\n return $e6602c9cee6df4a2$var$block(selections);\n },\n Field: function Field(_ref3) {\n var alias = _ref3.alias, name = _ref3.name, args = _ref3.arguments, directives = _ref3.directives, selectionSet = _ref3.selectionSet;\n var prefix = $e6602c9cee6df4a2$var$wrap(\"\", alias, \": \") + name;\n var argsLine = prefix + $e6602c9cee6df4a2$var$wrap(\"(\", $e6602c9cee6df4a2$var$join(args, \", \"), \")\");\n if (argsLine.length > $e6602c9cee6df4a2$var$MAX_LINE_LENGTH) argsLine = prefix + $e6602c9cee6df4a2$var$wrap(\"(\\n\", $e6602c9cee6df4a2$var$indent($e6602c9cee6df4a2$var$join(args, \"\\n\")), \"\\n)\");\n return $e6602c9cee6df4a2$var$join([\n argsLine,\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n selectionSet\n ], \" \");\n },\n Argument: function Argument(_ref4) {\n var name = _ref4.name, value = _ref4.value;\n return name + \": \" + value;\n },\n // Fragments\n FragmentSpread: function FragmentSpread(_ref5) {\n var name = _ref5.name, directives = _ref5.directives;\n return \"...\" + name + $e6602c9cee6df4a2$var$wrap(\" \", $e6602c9cee6df4a2$var$join(directives, \" \"));\n },\n InlineFragment: function InlineFragment(_ref6) {\n var typeCondition = _ref6.typeCondition, directives = _ref6.directives, selectionSet = _ref6.selectionSet;\n return $e6602c9cee6df4a2$var$join([\n \"...\",\n $e6602c9cee6df4a2$var$wrap(\"on \", typeCondition),\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n selectionSet\n ], \" \");\n },\n FragmentDefinition: function FragmentDefinition(_ref7) {\n var name = _ref7.name, typeCondition = _ref7.typeCondition, variableDefinitions = _ref7.variableDefinitions, directives = _ref7.directives, selectionSet = _ref7.selectionSet;\n return(// or removed in the future.\n \"fragment \".concat(name).concat($e6602c9cee6df4a2$var$wrap(\"(\", $e6602c9cee6df4a2$var$join(variableDefinitions, \", \"), \")\"), \" \") + \"on \".concat(typeCondition, \" \").concat($e6602c9cee6df4a2$var$wrap(\"\", $e6602c9cee6df4a2$var$join(directives, \" \"), \" \")) + selectionSet);\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, isBlockString = _ref10.block;\n return isBlockString ? (0, $7tbLu.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 \"[\" + $e6602c9cee6df4a2$var$join(values, \", \") + \"]\";\n },\n ObjectValue: function ObjectValue(_ref14) {\n var fields = _ref14.fields;\n return \"{\" + $e6602c9cee6df4a2$var$join(fields, \", \") + \"}\";\n },\n ObjectField: function ObjectField(_ref15) {\n var name = _ref15.name, value = _ref15.value;\n return name + \": \" + value;\n },\n // Directive\n Directive: function Directive(_ref16) {\n var name = _ref16.name, args = _ref16.arguments;\n return \"@\" + name + $e6602c9cee6df4a2$var$wrap(\"(\", $e6602c9cee6df4a2$var$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: $e6602c9cee6df4a2$var$addDescription(function(_ref20) {\n var directives = _ref20.directives, operationTypes = _ref20.operationTypes;\n return $e6602c9cee6df4a2$var$join([\n \"schema\",\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n $e6602c9cee6df4a2$var$block(operationTypes)\n ], \" \");\n }),\n OperationTypeDefinition: function OperationTypeDefinition(_ref21) {\n var operation = _ref21.operation, type = _ref21.type;\n return operation + \": \" + type;\n },\n ScalarTypeDefinition: $e6602c9cee6df4a2$var$addDescription(function(_ref22) {\n var name = _ref22.name, directives = _ref22.directives;\n return $e6602c9cee6df4a2$var$join([\n \"scalar\",\n name,\n $e6602c9cee6df4a2$var$join(directives, \" \")\n ], \" \");\n }),\n ObjectTypeDefinition: $e6602c9cee6df4a2$var$addDescription(function(_ref23) {\n var name = _ref23.name, interfaces = _ref23.interfaces, directives = _ref23.directives, fields = _ref23.fields;\n return $e6602c9cee6df4a2$var$join([\n \"type\",\n name,\n $e6602c9cee6df4a2$var$wrap(\"implements \", $e6602c9cee6df4a2$var$join(interfaces, \" & \")),\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n $e6602c9cee6df4a2$var$block(fields)\n ], \" \");\n }),\n FieldDefinition: $e6602c9cee6df4a2$var$addDescription(function(_ref24) {\n var name = _ref24.name, args = _ref24.arguments, type = _ref24.type, directives = _ref24.directives;\n return name + ($e6602c9cee6df4a2$var$hasMultilineItems(args) ? $e6602c9cee6df4a2$var$wrap(\"(\\n\", $e6602c9cee6df4a2$var$indent($e6602c9cee6df4a2$var$join(args, \"\\n\")), \"\\n)\") : $e6602c9cee6df4a2$var$wrap(\"(\", $e6602c9cee6df4a2$var$join(args, \", \"), \")\")) + \": \" + type + $e6602c9cee6df4a2$var$wrap(\" \", $e6602c9cee6df4a2$var$join(directives, \" \"));\n }),\n InputValueDefinition: $e6602c9cee6df4a2$var$addDescription(function(_ref25) {\n var name = _ref25.name, type = _ref25.type, defaultValue = _ref25.defaultValue, directives = _ref25.directives;\n return $e6602c9cee6df4a2$var$join([\n name + \": \" + type,\n $e6602c9cee6df4a2$var$wrap(\"= \", defaultValue),\n $e6602c9cee6df4a2$var$join(directives, \" \")\n ], \" \");\n }),\n InterfaceTypeDefinition: $e6602c9cee6df4a2$var$addDescription(function(_ref26) {\n var name = _ref26.name, interfaces = _ref26.interfaces, directives = _ref26.directives, fields = _ref26.fields;\n return $e6602c9cee6df4a2$var$join([\n \"interface\",\n name,\n $e6602c9cee6df4a2$var$wrap(\"implements \", $e6602c9cee6df4a2$var$join(interfaces, \" & \")),\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n $e6602c9cee6df4a2$var$block(fields)\n ], \" \");\n }),\n UnionTypeDefinition: $e6602c9cee6df4a2$var$addDescription(function(_ref27) {\n var name = _ref27.name, directives = _ref27.directives, types = _ref27.types;\n return $e6602c9cee6df4a2$var$join([\n \"union\",\n name,\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n types && types.length !== 0 ? \"= \" + $e6602c9cee6df4a2$var$join(types, \" | \") : \"\"\n ], \" \");\n }),\n EnumTypeDefinition: $e6602c9cee6df4a2$var$addDescription(function(_ref28) {\n var name = _ref28.name, directives = _ref28.directives, values = _ref28.values;\n return $e6602c9cee6df4a2$var$join([\n \"enum\",\n name,\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n $e6602c9cee6df4a2$var$block(values)\n ], \" \");\n }),\n EnumValueDefinition: $e6602c9cee6df4a2$var$addDescription(function(_ref29) {\n var name = _ref29.name, directives = _ref29.directives;\n return $e6602c9cee6df4a2$var$join([\n name,\n $e6602c9cee6df4a2$var$join(directives, \" \")\n ], \" \");\n }),\n InputObjectTypeDefinition: $e6602c9cee6df4a2$var$addDescription(function(_ref30) {\n var name = _ref30.name, directives = _ref30.directives, fields = _ref30.fields;\n return $e6602c9cee6df4a2$var$join([\n \"input\",\n name,\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n $e6602c9cee6df4a2$var$block(fields)\n ], \" \");\n }),\n DirectiveDefinition: $e6602c9cee6df4a2$var$addDescription(function(_ref31) {\n var name = _ref31.name, args = _ref31.arguments, repeatable = _ref31.repeatable, locations = _ref31.locations;\n return \"directive @\" + name + ($e6602c9cee6df4a2$var$hasMultilineItems(args) ? $e6602c9cee6df4a2$var$wrap(\"(\\n\", $e6602c9cee6df4a2$var$indent($e6602c9cee6df4a2$var$join(args, \"\\n\")), \"\\n)\") : $e6602c9cee6df4a2$var$wrap(\"(\", $e6602c9cee6df4a2$var$join(args, \", \"), \")\")) + (repeatable ? \" repeatable\" : \"\") + \" on \" + $e6602c9cee6df4a2$var$join(locations, \" | \");\n }),\n SchemaExtension: function SchemaExtension(_ref32) {\n var directives = _ref32.directives, operationTypes = _ref32.operationTypes;\n return $e6602c9cee6df4a2$var$join([\n \"extend schema\",\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n $e6602c9cee6df4a2$var$block(operationTypes)\n ], \" \");\n },\n ScalarTypeExtension: function ScalarTypeExtension(_ref33) {\n var name = _ref33.name, directives = _ref33.directives;\n return $e6602c9cee6df4a2$var$join([\n \"extend scalar\",\n name,\n $e6602c9cee6df4a2$var$join(directives, \" \")\n ], \" \");\n },\n ObjectTypeExtension: function ObjectTypeExtension(_ref34) {\n var name = _ref34.name, interfaces = _ref34.interfaces, directives = _ref34.directives, fields = _ref34.fields;\n return $e6602c9cee6df4a2$var$join([\n \"extend type\",\n name,\n $e6602c9cee6df4a2$var$wrap(\"implements \", $e6602c9cee6df4a2$var$join(interfaces, \" & \")),\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n $e6602c9cee6df4a2$var$block(fields)\n ], \" \");\n },\n InterfaceTypeExtension: function InterfaceTypeExtension(_ref35) {\n var name = _ref35.name, interfaces = _ref35.interfaces, directives = _ref35.directives, fields = _ref35.fields;\n return $e6602c9cee6df4a2$var$join([\n \"extend interface\",\n name,\n $e6602c9cee6df4a2$var$wrap(\"implements \", $e6602c9cee6df4a2$var$join(interfaces, \" & \")),\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n $e6602c9cee6df4a2$var$block(fields)\n ], \" \");\n },\n UnionTypeExtension: function UnionTypeExtension(_ref36) {\n var name = _ref36.name, directives = _ref36.directives, types = _ref36.types;\n return $e6602c9cee6df4a2$var$join([\n \"extend union\",\n name,\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n types && types.length !== 0 ? \"= \" + $e6602c9cee6df4a2$var$join(types, \" | \") : \"\"\n ], \" \");\n },\n EnumTypeExtension: function EnumTypeExtension(_ref37) {\n var name = _ref37.name, directives = _ref37.directives, values = _ref37.values;\n return $e6602c9cee6df4a2$var$join([\n \"extend enum\",\n name,\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n $e6602c9cee6df4a2$var$block(values)\n ], \" \");\n },\n InputObjectTypeExtension: function InputObjectTypeExtension(_ref38) {\n var name = _ref38.name, directives = _ref38.directives, fields = _ref38.fields;\n return $e6602c9cee6df4a2$var$join([\n \"extend input\",\n name,\n $e6602c9cee6df4a2$var$join(directives, \" \"),\n $e6602c9cee6df4a2$var$block(fields)\n ], \" \");\n }\n};\nfunction $e6602c9cee6df4a2$var$addDescription(cb) {\n return function(node) {\n return $e6602c9cee6df4a2$var$join([\n node.description,\n cb(node)\n ], \"\\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 */ function $e6602c9cee6df4a2$var$join(maybeArray) {\n var _maybeArray$filter$jo;\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 */ function $e6602c9cee6df4a2$var$block(array) {\n return $e6602c9cee6df4a2$var$wrap(\"{\\n\", $e6602c9cee6df4a2$var$indent($e6602c9cee6df4a2$var$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 */ function $e6602c9cee6df4a2$var$wrap(start, maybeString) {\n var end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"\";\n return maybeString != null && maybeString !== \"\" ? start + maybeString + end : \"\";\n}\nfunction $e6602c9cee6df4a2$var$indent(str) {\n return $e6602c9cee6df4a2$var$wrap(\" \", str.replace(/\\n/g, \"\\n \"));\n}\nfunction $e6602c9cee6df4a2$var$isMultiline(str) {\n return str.indexOf(\"\\n\") !== -1;\n}\nfunction $e6602c9cee6df4a2$var$hasMultilineItems(maybeArray) {\n return maybeArray != null && maybeArray.some($e6602c9cee6df4a2$var$isMultiline);\n}\n\n});\nparcelRegister(\"9m7aI\", function(module, exports) {\n\n$parcel$export(module.exports, \"visit\", () => $78b48476e314521e$export$bf638b60ea8b89b7);\n\nvar $gHwk7 = parcelRequire(\"gHwk7\");\n\nvar $8r1qs = parcelRequire(\"8r1qs\");\nvar $78b48476e314521e$export$4fcd777a40ccf407 = {\n Name: [],\n Document: [\n \"definitions\"\n ],\n OperationDefinition: [\n \"name\",\n \"variableDefinitions\",\n \"directives\",\n \"selectionSet\"\n ],\n VariableDefinition: [\n \"variable\",\n \"type\",\n \"defaultValue\",\n \"directives\"\n ],\n Variable: [\n \"name\"\n ],\n SelectionSet: [\n \"selections\"\n ],\n Field: [\n \"alias\",\n \"name\",\n \"arguments\",\n \"directives\",\n \"selectionSet\"\n ],\n Argument: [\n \"name\",\n \"value\"\n ],\n FragmentSpread: [\n \"name\",\n \"directives\"\n ],\n InlineFragment: [\n \"typeCondition\",\n \"directives\",\n \"selectionSet\"\n ],\n FragmentDefinition: [\n \"name\",\n // or removed in the future.\n \"variableDefinitions\",\n \"typeCondition\",\n \"directives\",\n \"selectionSet\"\n ],\n IntValue: [],\n FloatValue: [],\n StringValue: [],\n BooleanValue: [],\n NullValue: [],\n EnumValue: [],\n ListValue: [\n \"values\"\n ],\n ObjectValue: [\n \"fields\"\n ],\n ObjectField: [\n \"name\",\n \"value\"\n ],\n Directive: [\n \"name\",\n \"arguments\"\n ],\n NamedType: [\n \"name\"\n ],\n ListType: [\n \"type\"\n ],\n NonNullType: [\n \"type\"\n ],\n SchemaDefinition: [\n \"description\",\n \"directives\",\n \"operationTypes\"\n ],\n OperationTypeDefinition: [\n \"type\"\n ],\n ScalarTypeDefinition: [\n \"description\",\n \"name\",\n \"directives\"\n ],\n ObjectTypeDefinition: [\n \"description\",\n \"name\",\n \"interfaces\",\n \"directives\",\n \"fields\"\n ],\n FieldDefinition: [\n \"description\",\n \"name\",\n \"arguments\",\n \"type\",\n \"directives\"\n ],\n InputValueDefinition: [\n \"description\",\n \"name\",\n \"type\",\n \"defaultValue\",\n \"directives\"\n ],\n InterfaceTypeDefinition: [\n \"description\",\n \"name\",\n \"interfaces\",\n \"directives\",\n \"fields\"\n ],\n UnionTypeDefinition: [\n \"description\",\n \"name\",\n \"directives\",\n \"types\"\n ],\n EnumTypeDefinition: [\n \"description\",\n \"name\",\n \"directives\",\n \"values\"\n ],\n EnumValueDefinition: [\n \"description\",\n \"name\",\n \"directives\"\n ],\n InputObjectTypeDefinition: [\n \"description\",\n \"name\",\n \"directives\",\n \"fields\"\n ],\n DirectiveDefinition: [\n \"description\",\n \"name\",\n \"arguments\",\n \"locations\"\n ],\n SchemaExtension: [\n \"directives\",\n \"operationTypes\"\n ],\n ScalarTypeExtension: [\n \"name\",\n \"directives\"\n ],\n ObjectTypeExtension: [\n \"name\",\n \"interfaces\",\n \"directives\",\n \"fields\"\n ],\n InterfaceTypeExtension: [\n \"name\",\n \"interfaces\",\n \"directives\",\n \"fields\"\n ],\n UnionTypeExtension: [\n \"name\",\n \"directives\",\n \"types\"\n ],\n EnumTypeExtension: [\n \"name\",\n \"directives\",\n \"values\"\n ],\n InputObjectTypeExtension: [\n \"name\",\n \"directives\",\n \"fields\"\n ]\n};\nvar $78b48476e314521e$export$a89c95c098ac2a58 = Object.freeze({});\nfunction $78b48476e314521e$export$bf638b60ea8b89b7(root, visitor) {\n var visitorKeys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : $78b48476e314521e$export$4fcd777a40ccf407;\n /* eslint-disable no-undef-init */ var stack = undefined;\n var inArray = Array.isArray(root);\n var keys = [\n root\n ];\n var index = -1;\n var edits = [];\n var node = undefined;\n var key = undefined;\n var parent = undefined;\n var path = [];\n var ancestors = [];\n var newRoot = root;\n /* eslint-enable no-undef-init */ do {\n index++;\n var isLeaving = index === keys.length;\n var isEdited = isLeaving && edits.length !== 0;\n if (isLeaving) {\n key = ancestors.length === 0 ? undefined : path[path.length - 1];\n node = parent;\n parent = ancestors.pop();\n if (isEdited) {\n if (inArray) node = node.slice();\n else {\n var clone = {};\n for(var _i2 = 0, _Object$keys2 = Object.keys(node); _i2 < _Object$keys2.length; _i2++){\n var k = _Object$keys2[_i2];\n clone[k] = node[k];\n }\n node = clone;\n }\n var editOffset = 0;\n for(var ii = 0; ii < edits.length; ii++){\n var editKey = edits[ii][0];\n var editValue = edits[ii][1];\n if (inArray) editKey -= editOffset;\n if (inArray && editValue === null) {\n node.splice(editKey, 1);\n editOffset++;\n } else node[editKey] = editValue;\n }\n }\n index = stack.index;\n keys = stack.keys;\n edits = stack.edits;\n inArray = stack.inArray;\n stack = stack.prev;\n } else {\n key = parent ? inArray ? index : keys[index] : undefined;\n node = parent ? parent[key] : newRoot;\n if (node === null || node === undefined) continue;\n if (parent) path.push(key);\n }\n var result = void 0;\n if (!Array.isArray(node)) {\n if (!(0, $8r1qs.isNode)(node)) throw new Error(\"Invalid AST Node: \".concat((0, $gHwk7.default)(node), \".\"));\n var visitFn = $78b48476e314521e$export$c9c25cca74db6e70(visitor, node.kind, isLeaving);\n if (visitFn) {\n result = visitFn.call(visitor, node, key, parent, path, ancestors);\n if (result === $78b48476e314521e$export$a89c95c098ac2a58) break;\n if (result === false) {\n if (!isLeaving) {\n path.pop();\n continue;\n }\n } else if (result !== undefined) {\n edits.push([\n key,\n result\n ]);\n if (!isLeaving) {\n if ((0, $8r1qs.isNode)(result)) node = result;\n else {\n path.pop();\n continue;\n }\n }\n }\n }\n }\n if (result === undefined && isEdited) edits.push([\n key,\n node\n ]);\n if (isLeaving) path.pop();\n else {\n var _visitorKeys$node$kin;\n stack = {\n inArray: inArray,\n index: index,\n keys: keys,\n edits: edits,\n prev: stack\n };\n inArray = Array.isArray(node);\n keys = inArray ? node : (_visitorKeys$node$kin = visitorKeys[node.kind]) !== null && _visitorKeys$node$kin !== void 0 ? _visitorKeys$node$kin : [];\n index = -1;\n edits = [];\n if (parent) ancestors.push(parent);\n parent = node;\n }\n }while (stack !== undefined);\n if (edits.length !== 0) newRoot = edits[edits.length - 1][1];\n return newRoot;\n}\nfunction $78b48476e314521e$export$728beebeea393478(visitors) {\n var skipping = new Array(visitors.length);\n return {\n enter: function enter(node) {\n for(var i = 0; i < visitors.length; i++)if (skipping[i] == null) {\n var fn = $78b48476e314521e$export$c9c25cca74db6e70(visitors[i], node.kind, /* isLeaving */ false);\n if (fn) {\n var result = fn.apply(visitors[i], arguments);\n if (result === false) skipping[i] = node;\n else if (result === $78b48476e314521e$export$a89c95c098ac2a58) skipping[i] = $78b48476e314521e$export$a89c95c098ac2a58;\n else if (result !== undefined) return result;\n }\n }\n },\n leave: function leave(node) {\n for(var i = 0; i < visitors.length; i++){\n if (skipping[i] == null) {\n var fn = $78b48476e314521e$export$c9c25cca74db6e70(visitors[i], node.kind, /* isLeaving */ true);\n if (fn) {\n var result = fn.apply(visitors[i], arguments);\n if (result === $78b48476e314521e$export$a89c95c098ac2a58) skipping[i] = $78b48476e314521e$export$a89c95c098ac2a58;\n else if (result !== undefined && result !== false) return result;\n }\n } else if (skipping[i] === node) skipping[i] = null;\n }\n }\n };\n}\nfunction $78b48476e314521e$export$c9c25cca74db6e70(visitor, kind, isLeaving) {\n var kindVisitor = visitor[kind];\n if (kindVisitor) {\n if (!isLeaving && typeof kindVisitor === \"function\") // { Kind() {} }\n return kindVisitor;\n var kindSpecificVisitor = isLeaving ? kindVisitor.leave : kindVisitor.enter;\n if (typeof kindSpecificVisitor === \"function\") // { Kind: { enter() {}, leave() {} } }\n return kindSpecificVisitor;\n } else {\n var specificVisitor = isLeaving ? visitor.leave : visitor.enter;\n if (specificVisitor) {\n if (typeof specificVisitor === \"function\") // { enter() {}, leave() {} }\n return specificVisitor;\n var specificKindVisitor = specificVisitor[kind];\n if (typeof specificKindVisitor === \"function\") // { enter: { Kind() {} }, leave: { Kind() {} } }\n return specificKindVisitor;\n }\n }\n}\n\n});\n\n\nparcelRegister(\"fT695\", function(module, exports) {\n\n$parcel$export(module.exports, \"catchError\", () => $b910c27483c6e6a0$export$3dede90624df3ba9);\n\nvar $2ypWW = parcelRequire(\"2ypWW\");\n\nvar $4QgEI = parcelRequire(\"4QgEI\");\n\nvar $d9kQQ = parcelRequire(\"d9kQQ\");\nfunction $b910c27483c6e6a0$export$3dede90624df3ba9(selector) {\n return (0, $d9kQQ.operate)(function(source, subscriber) {\n var innerSub = null;\n var syncUnsub = false;\n var handledResult;\n innerSub = source.subscribe((0, $4QgEI.createOperatorSubscriber)(subscriber, undefined, undefined, function(err) {\n handledResult = (0, $2ypWW.innerFrom)(selector(err, $b910c27483c6e6a0$export$3dede90624df3ba9(selector)(source)));\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n } else syncUnsub = true;\n }));\n if (syncUnsub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n }\n });\n}\n\n});\nparcelRegister(\"2ypWW\", function(module, exports) {\n\n$parcel$export(module.exports, \"innerFrom\", () => $1dc2e2cd8f7c5351$export$6a9cfa3ebc765910);\n\nvar $7WQrb = parcelRequire(\"7WQrb\");\n\nvar $bGCU7 = parcelRequire(\"bGCU7\");\n\nvar $dy1jD = parcelRequire(\"dy1jD\");\n\nvar $6OiYn = parcelRequire(\"6OiYn\");\n\nvar $rOw2q = parcelRequire(\"rOw2q\");\n\nvar $aGtFl = parcelRequire(\"aGtFl\");\n\nvar $iolDb = parcelRequire(\"iolDb\");\n\nvar $fQMll = parcelRequire(\"fQMll\");\n\nvar $7gZl2 = parcelRequire(\"7gZl2\");\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\n\nvar $28DKm = parcelRequire(\"28DKm\");\n\nvar $kaCww = parcelRequire(\"kaCww\");\nfunction $1dc2e2cd8f7c5351$export$6a9cfa3ebc765910(input) {\n if (input instanceof (0, $6OiYn.Observable)) return input;\n if (input != null) {\n if ((0, $rOw2q.isInteropObservable)(input)) return $1dc2e2cd8f7c5351$export$aa3d41784b3267fa(input);\n if ((0, $bGCU7.isArrayLike)(input)) return $1dc2e2cd8f7c5351$export$4cb2acdbcda2c253(input);\n if ((0, $dy1jD.isPromise)(input)) return $1dc2e2cd8f7c5351$export$60f45028237c39d1(input);\n if ((0, $aGtFl.isAsyncIterable)(input)) return $1dc2e2cd8f7c5351$export$e073fccf36d78cc1(input);\n if ((0, $fQMll.isIterable)(input)) return $1dc2e2cd8f7c5351$export$dcccc29c315dd646(input);\n if ((0, $7gZl2.isReadableStreamLike)(input)) return $1dc2e2cd8f7c5351$export$b2dcb11d46e7a4ad(input);\n }\n throw (0, $iolDb.createInvalidObservableTypeError)(input);\n}\nfunction $1dc2e2cd8f7c5351$export$aa3d41784b3267fa(obj) {\n return new (0, $6OiYn.Observable)(function(subscriber) {\n var obs = obj[0, $kaCww.observable]();\n if ((0, $gCSeg.isFunction)(obs.subscribe)) return obs.subscribe(subscriber);\n throw new TypeError(\"Provided object does not correctly implement Symbol.observable\");\n });\n}\nfunction $1dc2e2cd8f7c5351$export$4cb2acdbcda2c253(array) {\n return new (0, $6OiYn.Observable)(function(subscriber) {\n for(var i = 0; i < array.length && !subscriber.closed; i++)subscriber.next(array[i]);\n subscriber.complete();\n });\n}\nfunction $1dc2e2cd8f7c5351$export$60f45028237c39d1(promise) {\n return new (0, $6OiYn.Observable)(function(subscriber) {\n promise.then(function(value) {\n if (!subscriber.closed) {\n subscriber.next(value);\n subscriber.complete();\n }\n }, function(err) {\n return subscriber.error(err);\n }).then(null, (0, $28DKm.reportUnhandledError));\n });\n}\nfunction $1dc2e2cd8f7c5351$export$dcccc29c315dd646(iterable) {\n return new (0, $6OiYn.Observable)(function(subscriber) {\n var e_1, _a;\n try {\n for(var iterable_1 = (0, $7WQrb.__values)(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()){\n var value = iterable_1_1.value;\n subscriber.next(value);\n if (subscriber.closed) return;\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally{\n try {\n if (iterable_1_1 && !iterable_1_1.done && (_a = iterable_1.return)) _a.call(iterable_1);\n } finally{\n if (e_1) throw e_1.error;\n }\n }\n subscriber.complete();\n });\n}\nfunction $1dc2e2cd8f7c5351$export$e073fccf36d78cc1(asyncIterable) {\n return new (0, $6OiYn.Observable)(function(subscriber) {\n $1dc2e2cd8f7c5351$var$process(asyncIterable, subscriber).catch(function(err) {\n return subscriber.error(err);\n });\n });\n}\nfunction $1dc2e2cd8f7c5351$export$b2dcb11d46e7a4ad(readableStream) {\n return $1dc2e2cd8f7c5351$export$e073fccf36d78cc1((0, $7gZl2.readableStreamLikeToAsyncGenerator)(readableStream));\n}\nfunction $1dc2e2cd8f7c5351$var$process(asyncIterable, subscriber) {\n var asyncIterable_1, asyncIterable_1_1;\n var e_2, _a;\n return (0, $7WQrb.__awaiter)(this, void 0, void 0, function() {\n var value, e_2_1;\n return (0, $7WQrb.__generator)(this, function(_b) {\n switch(_b.label){\n case 0:\n _b.trys.push([\n 0,\n 5,\n 6,\n 11\n ]);\n asyncIterable_1 = (0, $7WQrb.__asyncValues)(asyncIterable);\n _b.label = 1;\n case 1:\n return [\n 4,\n asyncIterable_1.next()\n ];\n case 2:\n if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) return [\n 3,\n 4\n ];\n value = asyncIterable_1_1.value;\n subscriber.next(value);\n if (subscriber.closed) return [\n 2\n ];\n _b.label = 3;\n case 3:\n return [\n 3,\n 1\n ];\n case 4:\n return [\n 3,\n 11\n ];\n case 5:\n e_2_1 = _b.sent();\n e_2 = {\n error: e_2_1\n };\n return [\n 3,\n 11\n ];\n case 6:\n _b.trys.push([\n 6,\n ,\n 9,\n 10\n ]);\n if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) return [\n 3,\n 8\n ];\n return [\n 4,\n _a.call(asyncIterable_1)\n ];\n case 7:\n _b.sent();\n _b.label = 8;\n case 8:\n return [\n 3,\n 10\n ];\n case 9:\n if (e_2) throw e_2.error;\n return [\n 7\n ];\n case 10:\n return [\n 7\n ];\n case 11:\n subscriber.complete();\n return [\n 2\n ];\n }\n });\n });\n}\n\n});\nparcelRegister(\"bGCU7\", function(module, exports) {\n\n$parcel$export(module.exports, \"isArrayLike\", () => $8821cb8787de9fb5$export$1e2f57719e155213);\nvar $8821cb8787de9fb5$export$1e2f57719e155213 = function(x) {\n return x && typeof x.length === \"number\" && typeof x !== \"function\";\n};\n\n});\n\nparcelRegister(\"dy1jD\", function(module, exports) {\n\n$parcel$export(module.exports, \"isPromise\", () => $9dcf7896928e75dd$export$4369c812aac99591);\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\nfunction $9dcf7896928e75dd$export$4369c812aac99591(value) {\n return (0, $gCSeg.isFunction)(value === null || value === void 0 ? void 0 : value.then);\n}\n\n});\nparcelRegister(\"gCSeg\", function(module, exports) {\n\n$parcel$export(module.exports, \"isFunction\", () => $c1aa42b0603892d6$export$f6e2535fb5126e54);\nfunction $c1aa42b0603892d6$export$f6e2535fb5126e54(value) {\n return typeof value === \"function\";\n}\n\n});\n\n\nparcelRegister(\"6OiYn\", function(module, exports) {\n\n$parcel$export(module.exports, \"Observable\", () => $4f562137a990678a$export$77cea355fa80b5f4);\n\nvar $hOMJ7 = parcelRequire(\"hOMJ7\");\n\nvar $bgI6x = parcelRequire(\"bgI6x\");\n\nvar $kaCww = parcelRequire(\"kaCww\");\n\nvar $1itL3 = parcelRequire(\"1itL3\");\n\nvar $hmjgn = parcelRequire(\"hmjgn\");\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\n\nvar $cxQqV = parcelRequire(\"cxQqV\");\nvar $4f562137a990678a$export$77cea355fa80b5f4 = function() {\n function Observable(subscribe) {\n if (subscribe) this._subscribe = subscribe;\n }\n Observable.prototype.lift = function(operator) {\n var observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n };\n Observable.prototype.subscribe = function(observerOrNext, error, complete) {\n var _this = this;\n var subscriber = $4f562137a990678a$var$isSubscriber(observerOrNext) ? observerOrNext : new (0, $hOMJ7.SafeSubscriber)(observerOrNext, error, complete);\n (0, $cxQqV.errorContext)(function() {\n var _a = _this, operator = _a.operator, source = _a.source;\n subscriber.add(operator ? operator.call(subscriber, source) : source ? _this._subscribe(subscriber) : _this._trySubscribe(subscriber));\n });\n return subscriber;\n };\n Observable.prototype._trySubscribe = function(sink) {\n try {\n return this._subscribe(sink);\n } catch (err) {\n sink.error(err);\n }\n };\n Observable.prototype.forEach = function(next, promiseCtor) {\n var _this = this;\n promiseCtor = $4f562137a990678a$var$getPromiseCtor(promiseCtor);\n return new promiseCtor(function(resolve, reject) {\n var subscriber = new (0, $hOMJ7.SafeSubscriber)({\n next: function(value) {\n try {\n next(value);\n } catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve\n });\n _this.subscribe(subscriber);\n });\n };\n Observable.prototype._subscribe = function(subscriber) {\n var _a;\n return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber);\n };\n Observable.prototype[0, $kaCww.observable] = function() {\n return this;\n };\n Observable.prototype.pipe = function() {\n var operations = [];\n for(var _i = 0; _i < arguments.length; _i++)operations[_i] = arguments[_i];\n return (0, $1itL3.pipeFromArray)(operations)(this);\n };\n Observable.prototype.toPromise = function(promiseCtor) {\n var _this = this;\n promiseCtor = $4f562137a990678a$var$getPromiseCtor(promiseCtor);\n return new promiseCtor(function(resolve, reject) {\n var value;\n _this.subscribe(function(x) {\n return value = x;\n }, function(err) {\n return reject(err);\n }, function() {\n return resolve(value);\n });\n });\n };\n Observable.create = function(subscribe) {\n return new Observable(subscribe);\n };\n return Observable;\n}();\nfunction $4f562137a990678a$var$getPromiseCtor(promiseCtor) {\n var _a;\n return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : (0, $hmjgn.config).Promise) !== null && _a !== void 0 ? _a : Promise;\n}\nfunction $4f562137a990678a$var$isObserver(value) {\n return value && (0, $gCSeg.isFunction)(value.next) && (0, $gCSeg.isFunction)(value.error) && (0, $gCSeg.isFunction)(value.complete);\n}\nfunction $4f562137a990678a$var$isSubscriber(value) {\n return value && value instanceof (0, $hOMJ7.Subscriber) || $4f562137a990678a$var$isObserver(value) && (0, $bgI6x.isSubscription)(value);\n}\n\n});\nparcelRegister(\"hOMJ7\", function(module, exports) {\n\n$parcel$export(module.exports, \"Subscriber\", () => $cf8ce74b80455e9f$export$60959659b2c22881);\n$parcel$export(module.exports, \"SafeSubscriber\", () => $cf8ce74b80455e9f$export$94eeb6a328cab6c7);\n\nvar $7WQrb = parcelRequire(\"7WQrb\");\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\n\nvar $bgI6x = parcelRequire(\"bgI6x\");\n\nvar $hmjgn = parcelRequire(\"hmjgn\");\n\nvar $28DKm = parcelRequire(\"28DKm\");\n\nvar $75rFk = parcelRequire(\"75rFk\");\n\nvar $ZT8xQ = parcelRequire(\"ZT8xQ\");\n\nvar $gwzK1 = parcelRequire(\"gwzK1\");\n\nvar $cxQqV = parcelRequire(\"cxQqV\");\nvar $cf8ce74b80455e9f$export$60959659b2c22881 = function(_super) {\n (0, $7WQrb.__extends)(Subscriber, _super);\n function Subscriber(destination) {\n var _this = _super.call(this) || this;\n _this.isStopped = false;\n if (destination) {\n _this.destination = destination;\n if ((0, $bgI6x.isSubscription)(destination)) destination.add(_this);\n } else _this.destination = $cf8ce74b80455e9f$export$88d395d20619a0af;\n return _this;\n }\n Subscriber.create = function(next, error, complete) {\n return new $cf8ce74b80455e9f$export$94eeb6a328cab6c7(next, error, complete);\n };\n Subscriber.prototype.next = function(value) {\n if (this.isStopped) $cf8ce74b80455e9f$var$handleStoppedNotification((0, $ZT8xQ.nextNotification)(value), this);\n else this._next(value);\n };\n Subscriber.prototype.error = function(err) {\n if (this.isStopped) $cf8ce74b80455e9f$var$handleStoppedNotification((0, $ZT8xQ.errorNotification)(err), this);\n else {\n this.isStopped = true;\n this._error(err);\n }\n };\n Subscriber.prototype.complete = function() {\n if (this.isStopped) $cf8ce74b80455e9f$var$handleStoppedNotification((0, $ZT8xQ.COMPLETE_NOTIFICATION), this);\n else {\n this.isStopped = true;\n this._complete();\n }\n };\n Subscriber.prototype.unsubscribe = function() {\n if (!this.closed) {\n this.isStopped = true;\n _super.prototype.unsubscribe.call(this);\n this.destination = null;\n }\n };\n Subscriber.prototype._next = function(value) {\n this.destination.next(value);\n };\n Subscriber.prototype._error = function(err) {\n try {\n this.destination.error(err);\n } finally{\n this.unsubscribe();\n }\n };\n Subscriber.prototype._complete = function() {\n try {\n this.destination.complete();\n } finally{\n this.unsubscribe();\n }\n };\n return Subscriber;\n}((0, $bgI6x.Subscription));\nvar $cf8ce74b80455e9f$var$_bind = Function.prototype.bind;\nfunction $cf8ce74b80455e9f$var$bind(fn, thisArg) {\n return $cf8ce74b80455e9f$var$_bind.call(fn, thisArg);\n}\nvar $cf8ce74b80455e9f$var$ConsumerObserver = function() {\n function ConsumerObserver(partialObserver) {\n this.partialObserver = partialObserver;\n }\n ConsumerObserver.prototype.next = function(value) {\n var partialObserver = this.partialObserver;\n if (partialObserver.next) try {\n partialObserver.next(value);\n } catch (error) {\n $cf8ce74b80455e9f$var$handleUnhandledError(error);\n }\n };\n ConsumerObserver.prototype.error = function(err) {\n var partialObserver = this.partialObserver;\n if (partialObserver.error) try {\n partialObserver.error(err);\n } catch (error) {\n $cf8ce74b80455e9f$var$handleUnhandledError(error);\n }\n else $cf8ce74b80455e9f$var$handleUnhandledError(err);\n };\n ConsumerObserver.prototype.complete = function() {\n var partialObserver = this.partialObserver;\n if (partialObserver.complete) try {\n partialObserver.complete();\n } catch (error) {\n $cf8ce74b80455e9f$var$handleUnhandledError(error);\n }\n };\n return ConsumerObserver;\n}();\nvar $cf8ce74b80455e9f$export$94eeb6a328cab6c7 = function(_super) {\n (0, $7WQrb.__extends)(SafeSubscriber, _super);\n function SafeSubscriber(observerOrNext, error, complete) {\n var _this = _super.call(this) || this;\n var partialObserver;\n if ((0, $gCSeg.isFunction)(observerOrNext) || !observerOrNext) partialObserver = {\n next: observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : undefined,\n error: error !== null && error !== void 0 ? error : undefined,\n complete: complete !== null && complete !== void 0 ? complete : undefined\n };\n else {\n var context_1;\n if (_this && (0, $hmjgn.config).useDeprecatedNextContext) {\n context_1 = Object.create(observerOrNext);\n context_1.unsubscribe = function() {\n return _this.unsubscribe();\n };\n partialObserver = {\n next: observerOrNext.next && $cf8ce74b80455e9f$var$bind(observerOrNext.next, context_1),\n error: observerOrNext.error && $cf8ce74b80455e9f$var$bind(observerOrNext.error, context_1),\n complete: observerOrNext.complete && $cf8ce74b80455e9f$var$bind(observerOrNext.complete, context_1)\n };\n } else partialObserver = observerOrNext;\n }\n _this.destination = new $cf8ce74b80455e9f$var$ConsumerObserver(partialObserver);\n return _this;\n }\n return SafeSubscriber;\n}($cf8ce74b80455e9f$export$60959659b2c22881);\nfunction $cf8ce74b80455e9f$var$handleUnhandledError(error) {\n if ((0, $hmjgn.config).useDeprecatedSynchronousErrorHandling) (0, $cxQqV.captureError)(error);\n else (0, $28DKm.reportUnhandledError)(error);\n}\nfunction $cf8ce74b80455e9f$var$defaultErrorHandler(err) {\n throw err;\n}\nfunction $cf8ce74b80455e9f$var$handleStoppedNotification(notification, subscriber) {\n var onStoppedNotification = (0, $hmjgn.config).onStoppedNotification;\n onStoppedNotification && (0, $gwzK1.timeoutProvider).setTimeout(function() {\n return onStoppedNotification(notification, subscriber);\n });\n}\nvar $cf8ce74b80455e9f$export$88d395d20619a0af = {\n closed: true,\n next: (0, $75rFk.noop),\n error: $cf8ce74b80455e9f$var$defaultErrorHandler,\n complete: (0, $75rFk.noop)\n};\n\n});\nparcelRegister(\"bgI6x\", function(module, exports) {\n\n$parcel$export(module.exports, \"Subscription\", () => $8343668acd7c4a9b$export$f55210826850c514);\n$parcel$export(module.exports, \"isSubscription\", () => $8343668acd7c4a9b$export$4f9221cbada3c4fc);\n\nvar $7WQrb = parcelRequire(\"7WQrb\");\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\n\nvar $l4W4q = parcelRequire(\"l4W4q\");\n\nvar $3JYOM = parcelRequire(\"3JYOM\");\nvar $8343668acd7c4a9b$export$f55210826850c514 = function() {\n function Subscription(initialTeardown) {\n this.initialTeardown = initialTeardown;\n this.closed = false;\n this._parentage = null;\n this._finalizers = null;\n }\n Subscription.prototype.unsubscribe = function() {\n var e_1, _a, e_2, _b;\n var errors;\n if (!this.closed) {\n this.closed = true;\n var _parentage = this._parentage;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) try {\n for(var _parentage_1 = (0, $7WQrb.__values)(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()){\n var parent_1 = _parentage_1_1.value;\n parent_1.remove(this);\n }\n } catch (e_1_1) {\n e_1 = {\n error: e_1_1\n };\n } finally{\n try {\n if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) _a.call(_parentage_1);\n } finally{\n if (e_1) throw e_1.error;\n }\n }\n else _parentage.remove(this);\n }\n var initialFinalizer = this.initialTeardown;\n if ((0, $gCSeg.isFunction)(initialFinalizer)) try {\n initialFinalizer();\n } catch (e) {\n errors = e instanceof (0, $l4W4q.UnsubscriptionError) ? e.errors : [\n e\n ];\n }\n var _finalizers = this._finalizers;\n if (_finalizers) {\n this._finalizers = null;\n try {\n for(var _finalizers_1 = (0, $7WQrb.__values)(_finalizers), _finalizers_1_1 = _finalizers_1.next(); !_finalizers_1_1.done; _finalizers_1_1 = _finalizers_1.next()){\n var finalizer = _finalizers_1_1.value;\n try {\n $8343668acd7c4a9b$var$execFinalizer(finalizer);\n } catch (err) {\n errors = errors !== null && errors !== void 0 ? errors : [];\n if (err instanceof (0, $l4W4q.UnsubscriptionError)) errors = (0, $7WQrb.__spreadArray)((0, $7WQrb.__spreadArray)([], (0, $7WQrb.__read)(errors)), (0, $7WQrb.__read)(err.errors));\n else errors.push(err);\n }\n }\n } catch (e_2_1) {\n e_2 = {\n error: e_2_1\n };\n } finally{\n try {\n if (_finalizers_1_1 && !_finalizers_1_1.done && (_b = _finalizers_1.return)) _b.call(_finalizers_1);\n } finally{\n if (e_2) throw e_2.error;\n }\n }\n }\n if (errors) throw new (0, $l4W4q.UnsubscriptionError)(errors);\n }\n };\n Subscription.prototype.add = function(teardown) {\n var _a;\n if (teardown && teardown !== this) {\n if (this.closed) $8343668acd7c4a9b$var$execFinalizer(teardown);\n else {\n if (teardown instanceof Subscription) {\n if (teardown.closed || teardown._hasParent(this)) return;\n teardown._addParent(this);\n }\n (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown);\n }\n }\n };\n Subscription.prototype._hasParent = function(parent) {\n var _parentage = this._parentage;\n return _parentage === parent || Array.isArray(_parentage) && _parentage.includes(parent);\n };\n Subscription.prototype._addParent = function(parent) {\n var _parentage = this._parentage;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [\n _parentage,\n parent\n ] : parent;\n };\n Subscription.prototype._removeParent = function(parent) {\n var _parentage = this._parentage;\n if (_parentage === parent) this._parentage = null;\n else if (Array.isArray(_parentage)) (0, $3JYOM.arrRemove)(_parentage, parent);\n };\n Subscription.prototype.remove = function(teardown) {\n var _finalizers = this._finalizers;\n _finalizers && (0, $3JYOM.arrRemove)(_finalizers, teardown);\n if (teardown instanceof Subscription) teardown._removeParent(this);\n };\n Subscription.EMPTY = function() {\n var empty = new Subscription();\n empty.closed = true;\n return empty;\n }();\n return Subscription;\n}();\nvar $8343668acd7c4a9b$export$610f9c3ca1a38dd8 = $8343668acd7c4a9b$export$f55210826850c514.EMPTY;\nfunction $8343668acd7c4a9b$export$4f9221cbada3c4fc(value) {\n return value instanceof $8343668acd7c4a9b$export$f55210826850c514 || value && \"closed\" in value && (0, $gCSeg.isFunction)(value.remove) && (0, $gCSeg.isFunction)(value.add) && (0, $gCSeg.isFunction)(value.unsubscribe);\n}\nfunction $8343668acd7c4a9b$var$execFinalizer(finalizer) {\n if ((0, $gCSeg.isFunction)(finalizer)) finalizer();\n else finalizer.unsubscribe();\n}\n\n});\nparcelRegister(\"l4W4q\", function(module, exports) {\n\n$parcel$export(module.exports, \"UnsubscriptionError\", () => $f587043ffd615a90$export$c9648b76fd580c34);\n\nvar $kfFvr = parcelRequire(\"kfFvr\");\nvar $f587043ffd615a90$export$c9648b76fd580c34 = (0, $kfFvr.createErrorClass)(function(_super) {\n return function UnsubscriptionErrorImpl(errors) {\n _super(this);\n this.message = errors ? errors.length + \" errors occurred during unsubscription:\\n\" + errors.map(function(err, i) {\n return i + 1 + \") \" + err.toString();\n }).join(\"\\n \") : \"\";\n this.name = \"UnsubscriptionError\";\n this.errors = errors;\n };\n});\n\n});\nparcelRegister(\"kfFvr\", function(module, exports) {\n\n$parcel$export(module.exports, \"createErrorClass\", () => $ebe567a061bc80f6$export$128a15b65d1b6041);\nfunction $ebe567a061bc80f6$export$128a15b65d1b6041(createImpl) {\n var _super = function(instance) {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n var ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n\n});\n\n\nparcelRegister(\"3JYOM\", function(module, exports) {\n\n$parcel$export(module.exports, \"arrRemove\", () => $2b94c03d07e501cc$export$dae3f38077fc36c0);\nfunction $2b94c03d07e501cc$export$dae3f38077fc36c0(arr, item) {\n if (arr) {\n var index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n\n});\n\n\nparcelRegister(\"hmjgn\", function(module, exports) {\n\n$parcel$export(module.exports, \"config\", () => $ca336efb1b4fb564$export$e506a1d27d1eaa20);\nvar $ca336efb1b4fb564$export$e506a1d27d1eaa20 = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false\n};\n\n});\n\nparcelRegister(\"28DKm\", function(module, exports) {\n\n$parcel$export(module.exports, \"reportUnhandledError\", () => $18eb28ff53cc4943$export$ebf645db02d3e99f);\n\nvar $hmjgn = parcelRequire(\"hmjgn\");\n\nvar $gwzK1 = parcelRequire(\"gwzK1\");\nfunction $18eb28ff53cc4943$export$ebf645db02d3e99f(err) {\n (0, $gwzK1.timeoutProvider).setTimeout(function() {\n var onUnhandledError = (0, $hmjgn.config).onUnhandledError;\n if (onUnhandledError) onUnhandledError(err);\n else throw err;\n });\n}\n\n});\nparcelRegister(\"gwzK1\", function(module, exports) {\n\n$parcel$export(module.exports, \"timeoutProvider\", () => $c07b5bfa3b9d4401$export$365aa6bd3c788e3d);\n\nvar $7WQrb = parcelRequire(\"7WQrb\");\nvar $c07b5bfa3b9d4401$export$365aa6bd3c788e3d = {\n setTimeout: function(handler, timeout) {\n var args = [];\n for(var _i = 2; _i < arguments.length; _i++)args[_i - 2] = arguments[_i];\n var delegate = $c07b5bfa3b9d4401$export$365aa6bd3c788e3d.delegate;\n if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) return delegate.setTimeout.apply(delegate, (0, $7WQrb.__spreadArray)([\n handler,\n timeout\n ], (0, $7WQrb.__read)(args)));\n return setTimeout.apply(void 0, (0, $7WQrb.__spreadArray)([\n handler,\n timeout\n ], (0, $7WQrb.__read)(args)));\n },\n clearTimeout: function(handle) {\n var delegate = $c07b5bfa3b9d4401$export$365aa6bd3c788e3d.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle);\n },\n delegate: undefined\n};\n\n});\n\n\nparcelRegister(\"75rFk\", function(module, exports) {\n\n$parcel$export(module.exports, \"noop\", () => $528e75db69787807$export$8793edee2d425525);\nfunction $528e75db69787807$export$8793edee2d425525() {}\n\n});\n\nparcelRegister(\"ZT8xQ\", function(module, exports) {\n\n$parcel$export(module.exports, \"COMPLETE_NOTIFICATION\", () => $0ba077a4cdfd9739$export$b7f97edb34bc1f87);\n$parcel$export(module.exports, \"errorNotification\", () => $0ba077a4cdfd9739$export$dd472c3d8fe5a85a);\n$parcel$export(module.exports, \"nextNotification\", () => $0ba077a4cdfd9739$export$ff9346b0d1d30313);\nvar $0ba077a4cdfd9739$export$b7f97edb34bc1f87 = function() {\n return $0ba077a4cdfd9739$export$9c8f6e8d39c60cf3(\"C\", undefined, undefined);\n}();\nfunction $0ba077a4cdfd9739$export$dd472c3d8fe5a85a(error) {\n return $0ba077a4cdfd9739$export$9c8f6e8d39c60cf3(\"E\", undefined, error);\n}\nfunction $0ba077a4cdfd9739$export$ff9346b0d1d30313(value) {\n return $0ba077a4cdfd9739$export$9c8f6e8d39c60cf3(\"N\", value, undefined);\n}\nfunction $0ba077a4cdfd9739$export$9c8f6e8d39c60cf3(kind, value, error) {\n return {\n kind: kind,\n value: value,\n error: error\n };\n}\n\n});\n\nparcelRegister(\"cxQqV\", function(module, exports) {\n\n$parcel$export(module.exports, \"errorContext\", () => $92213d3dd6a83b5d$export$d974811edc77eafa);\n$parcel$export(module.exports, \"captureError\", () => $92213d3dd6a83b5d$export$3e205fbb5df021e0);\n\nvar $hmjgn = parcelRequire(\"hmjgn\");\nvar $92213d3dd6a83b5d$var$context = null;\nfunction $92213d3dd6a83b5d$export$d974811edc77eafa(cb) {\n if ((0, $hmjgn.config).useDeprecatedSynchronousErrorHandling) {\n var isRoot = !$92213d3dd6a83b5d$var$context;\n if (isRoot) $92213d3dd6a83b5d$var$context = {\n errorThrown: false,\n error: null\n };\n cb();\n if (isRoot) {\n var _a = $92213d3dd6a83b5d$var$context, errorThrown = _a.errorThrown, error = _a.error;\n $92213d3dd6a83b5d$var$context = null;\n if (errorThrown) throw error;\n }\n } else cb();\n}\nfunction $92213d3dd6a83b5d$export$3e205fbb5df021e0(err) {\n if ((0, $hmjgn.config).useDeprecatedSynchronousErrorHandling && $92213d3dd6a83b5d$var$context) {\n $92213d3dd6a83b5d$var$context.errorThrown = true;\n $92213d3dd6a83b5d$var$context.error = err;\n }\n}\n\n});\n\n\nparcelRegister(\"kaCww\", function(module, exports) {\n\n$parcel$export(module.exports, \"observable\", () => $eaf29fccbded6ed3$export$5ab46cbf6120b33a);\nvar $eaf29fccbded6ed3$export$5ab46cbf6120b33a = function() {\n return typeof Symbol === \"function\" && Symbol.observable || \"@@observable\";\n}();\n\n});\n\nparcelRegister(\"1itL3\", function(module, exports) {\n\n$parcel$export(module.exports, \"pipeFromArray\", () => $0f1e8e2d1fe93adf$export$71f88a61afaa14d7);\n\nvar $a4Ze1 = parcelRequire(\"a4Ze1\");\nfunction $0f1e8e2d1fe93adf$export$a4627e546088548d() {\n var fns = [];\n for(var _i = 0; _i < arguments.length; _i++)fns[_i] = arguments[_i];\n return $0f1e8e2d1fe93adf$export$71f88a61afaa14d7(fns);\n}\nfunction $0f1e8e2d1fe93adf$export$71f88a61afaa14d7(fns) {\n if (fns.length === 0) return 0, $a4Ze1.identity;\n if (fns.length === 1) return fns[0];\n return function piped(input) {\n return fns.reduce(function(prev, fn) {\n return fn(prev);\n }, input);\n };\n}\n\n});\nparcelRegister(\"a4Ze1\", function(module, exports) {\n\n$parcel$export(module.exports, \"identity\", () => $7569c528cdd9d182$export$f0954fd7d5368655);\nfunction $7569c528cdd9d182$export$f0954fd7d5368655(x) {\n return x;\n}\n\n});\n\n\n\nparcelRegister(\"rOw2q\", function(module, exports) {\n\n$parcel$export(module.exports, \"isInteropObservable\", () => $0539b51af1903d0a$export$48c0cddbc99c45c2);\n\nvar $kaCww = parcelRequire(\"kaCww\");\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\nfunction $0539b51af1903d0a$export$48c0cddbc99c45c2(input) {\n return (0, $gCSeg.isFunction)(input[0, $kaCww.observable]);\n}\n\n});\n\nparcelRegister(\"aGtFl\", function(module, exports) {\n\n$parcel$export(module.exports, \"isAsyncIterable\", () => $7c74d6a5e2273447$export$edb10ab8dd75a915);\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\nfunction $7c74d6a5e2273447$export$edb10ab8dd75a915(obj) {\n return Symbol.asyncIterator && (0, $gCSeg.isFunction)(obj === null || obj === void 0 ? void 0 : obj[Symbol.asyncIterator]);\n}\n\n});\n\nparcelRegister(\"iolDb\", function(module, exports) {\n\n$parcel$export(module.exports, \"createInvalidObservableTypeError\", () => $d63b3f5b704e6de4$export$7cbe71b9fa263484);\nfunction $d63b3f5b704e6de4$export$7cbe71b9fa263484(input) {\n return new TypeError(\"You provided \" + (input !== null && typeof input === \"object\" ? \"an invalid object\" : \"'\" + input + \"'\") + \" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.\");\n}\n\n});\n\nparcelRegister(\"fQMll\", function(module, exports) {\n\n$parcel$export(module.exports, \"isIterable\", () => $b8a13650b96f19ab$export$9652023d9040757);\n\nvar $ZpNjd = parcelRequire(\"ZpNjd\");\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\nfunction $b8a13650b96f19ab$export$9652023d9040757(input) {\n return (0, $gCSeg.isFunction)(input === null || input === void 0 ? void 0 : input[0, $ZpNjd.iterator]);\n}\n\n});\nparcelRegister(\"ZpNjd\", function(module, exports) {\n\n$parcel$export(module.exports, \"iterator\", () => $0b89b4d4fb8bd3fd$export$6f58e2338da23f4d);\nfunction $0b89b4d4fb8bd3fd$export$aa9956be4ae4fe8() {\n if (typeof Symbol !== \"function\" || !Symbol.iterator) return \"@@iterator\";\n return Symbol.iterator;\n}\nvar $0b89b4d4fb8bd3fd$export$6f58e2338da23f4d = $0b89b4d4fb8bd3fd$export$aa9956be4ae4fe8();\n\n});\n\n\nparcelRegister(\"7gZl2\", function(module, exports) {\n\n$parcel$export(module.exports, \"readableStreamLikeToAsyncGenerator\", () => $54b99b9095e84ce4$export$cf4785e597badab3);\n$parcel$export(module.exports, \"isReadableStreamLike\", () => $54b99b9095e84ce4$export$c088ffafdba7405f);\n\nvar $7WQrb = parcelRequire(\"7WQrb\");\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\nfunction $54b99b9095e84ce4$export$cf4785e597badab3(readableStream) {\n return (0, $7WQrb.__asyncGenerator)(this, arguments, function readableStreamLikeToAsyncGenerator_1() {\n var reader, _a, value, done;\n return (0, $7WQrb.__generator)(this, function(_b) {\n switch(_b.label){\n case 0:\n reader = readableStream.getReader();\n _b.label = 1;\n case 1:\n _b.trys.push([\n 1,\n ,\n 9,\n 10\n ]);\n _b.label = 2;\n case 2:\n return [\n 4,\n (0, $7WQrb.__await)(reader.read())\n ];\n case 3:\n _a = _b.sent(), value = _a.value, done = _a.done;\n if (!done) return [\n 3,\n 5\n ];\n return [\n 4,\n (0, $7WQrb.__await)(void 0)\n ];\n case 4:\n return [\n 2,\n _b.sent()\n ];\n case 5:\n return [\n 4,\n (0, $7WQrb.__await)(value)\n ];\n case 6:\n return [\n 4,\n _b.sent()\n ];\n case 7:\n _b.sent();\n return [\n 3,\n 2\n ];\n case 8:\n return [\n 3,\n 10\n ];\n case 9:\n reader.releaseLock();\n return [\n 7\n ];\n case 10:\n return [\n 2\n ];\n }\n });\n });\n}\nfunction $54b99b9095e84ce4$export$c088ffafdba7405f(obj) {\n return (0, $gCSeg.isFunction)(obj === null || obj === void 0 ? void 0 : obj.getReader);\n}\n\n});\n\n\nparcelRegister(\"4QgEI\", function(module, exports) {\n\n$parcel$export(module.exports, \"createOperatorSubscriber\", () => $3868f035248205c1$export$b9e075132cc6937f);\n\nvar $7WQrb = parcelRequire(\"7WQrb\");\n\nvar $hOMJ7 = parcelRequire(\"hOMJ7\");\nfunction $3868f035248205c1$export$b9e075132cc6937f(destination, onNext, onComplete, onError, onFinalize) {\n return new $3868f035248205c1$export$8fbbf0c4d80268e5(destination, onNext, onComplete, onError, onFinalize);\n}\nvar $3868f035248205c1$export$8fbbf0c4d80268e5 = function(_super) {\n (0, $7WQrb.__extends)(OperatorSubscriber, _super);\n function OperatorSubscriber(destination, onNext, onComplete, onError, onFinalize, shouldUnsubscribe) {\n var _this = _super.call(this, destination) || this;\n _this.onFinalize = onFinalize;\n _this.shouldUnsubscribe = shouldUnsubscribe;\n _this._next = onNext ? function(value) {\n try {\n onNext(value);\n } catch (err) {\n destination.error(err);\n }\n } : _super.prototype._next;\n _this._error = onError ? function(err) {\n try {\n onError(err);\n } catch (err) {\n destination.error(err);\n } finally{\n this.unsubscribe();\n }\n } : _super.prototype._error;\n _this._complete = onComplete ? function() {\n try {\n onComplete();\n } catch (err) {\n destination.error(err);\n } finally{\n this.unsubscribe();\n }\n } : _super.prototype._complete;\n return _this;\n }\n OperatorSubscriber.prototype.unsubscribe = function() {\n var _a;\n if (!this.shouldUnsubscribe || this.shouldUnsubscribe()) {\n var closed_1 = this.closed;\n _super.prototype.unsubscribe.call(this);\n !closed_1 && ((_a = this.onFinalize) === null || _a === void 0 || _a.call(this));\n }\n };\n return OperatorSubscriber;\n}((0, $hOMJ7.Subscriber));\n\n});\n\nparcelRegister(\"d9kQQ\", function(module, exports) {\n\n$parcel$export(module.exports, \"operate\", () => $992c4a42843eb1d0$export$871731df685d7753);\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\nfunction $992c4a42843eb1d0$export$ebec8610810318c5(source) {\n return (0, $gCSeg.isFunction)(source === null || source === void 0 ? void 0 : source.lift);\n}\nfunction $992c4a42843eb1d0$export$871731df685d7753(init) {\n return function(source) {\n if ($992c4a42843eb1d0$export$ebec8610810318c5(source)) return source.lift(function(liftedSource) {\n try {\n return init(liftedSource, this);\n } catch (err) {\n this.error(err);\n }\n });\n throw new TypeError(\"Unable to lift unknown Observable type\");\n };\n}\n\n});\n\n\nparcelRegister(\"lvJDy\", function(module, exports) {\n\n$parcel$export(module.exports, \"GraphQLAuthError\", () => $5d69ad309249365b$export$b77ee9d1a91b5bd);\n$parcel$export(module.exports, \"__amplify\", () => $5d69ad309249365b$export$87dc5468d5b26aba);\n$parcel$export(module.exports, \"__authMode\", () => $5d69ad309249365b$export$593785724ae3fc20);\n$parcel$export(module.exports, \"__authToken\", () => $5d69ad309249365b$export$8a1470dae10dd715);\n$parcel$export(module.exports, \"__headers\", () => $5d69ad309249365b$export$2625404bf7c4f53c);\n\nvar $5d69ad309249365b$export$b77ee9d1a91b5bd;\n(function(GraphQLAuthError) {\n GraphQLAuthError[\"NO_API_KEY\"] = \"No api-key configured\";\n GraphQLAuthError[\"NO_CURRENT_USER\"] = \"No current user\";\n GraphQLAuthError[\"NO_CREDENTIALS\"] = \"No credentials\";\n GraphQLAuthError[\"NO_FEDERATED_JWT\"] = \"No federated jwt\";\n GraphQLAuthError[\"NO_AUTH_TOKEN\"] = \"No auth token specified\";\n})($5d69ad309249365b$export$b77ee9d1a91b5bd || ($5d69ad309249365b$export$b77ee9d1a91b5bd = {}));\nconst $5d69ad309249365b$export$87dc5468d5b26aba = Symbol(\"amplify\");\nconst $5d69ad309249365b$export$593785724ae3fc20 = Symbol(\"authMode\");\nconst $5d69ad309249365b$export$8a1470dae10dd715 = Symbol(\"authToken\");\nconst $5d69ad309249365b$export$2625404bf7c4f53c = Symbol(\"headers\");\n\n});\n\nparcelRegister(\"LTBY8\", function(module, exports) {\n\n$parcel$export(module.exports, \"isCancelError\", () => (parcelRequire(\"3Qiot\")).isCancelError);\n\nvar $3Qiot = parcelRequire(\"3Qiot\");\n\nvar $4gdZ0 = parcelRequire(\"4gdZ0\");\n\n});\nparcelRegister(\"3Qiot\", function(module, exports) {\n\n$parcel$export(module.exports, \"CanceledError\", () => $afc3a2575e3b5a06$export$1ab0c6b20d94fa14);\n$parcel$export(module.exports, \"isCancelError\", () => $afc3a2575e3b5a06$export$a88a1555052550c7);\n\nvar $elLC1 = parcelRequire(\"elLC1\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Internal-only class for CanceledError.\n *\n * @internal\n */ class $afc3a2575e3b5a06$export$1ab0c6b20d94fa14 extends (0, $elLC1.RestApiError) {\n constructor(params = {}){\n super({\n name: \"CanceledError\",\n message: \"Request is canceled by user\",\n ...params\n });\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = $afc3a2575e3b5a06$export$1ab0c6b20d94fa14;\n Object.setPrototypeOf(this, $afc3a2575e3b5a06$export$1ab0c6b20d94fa14.prototype);\n }\n}\n/**\n * Check if an error is caused by user calling `cancel()` in REST API.\n *\n * @note This function works **ONLY** for errors thrown by REST API. For GraphQL APIs, use `client.isCancelError(error)`\n * instead. `client` is generated from `generateClient()` API from `aws-amplify/api`.\n */ const $afc3a2575e3b5a06$export$a88a1555052550c7 = (error)=>!!error && error instanceof $afc3a2575e3b5a06$export$1ab0c6b20d94fa14;\n\n});\nparcelRegister(\"elLC1\", function(module, exports) {\n\n$parcel$export(module.exports, \"RestApiError\", () => $0c25662755c5b83d$export$18e4f8e37ec3871f);\n\nvar $N4Cyz = parcelRequire(\"N4Cyz\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass $0c25662755c5b83d$export$18e4f8e37ec3871f extends (0, $N4Cyz.ApiError) {\n constructor(params){\n super(params);\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = $0c25662755c5b83d$export$18e4f8e37ec3871f;\n Object.setPrototypeOf(this, $0c25662755c5b83d$export$18e4f8e37ec3871f.prototype);\n }\n}\n\n});\nparcelRegister(\"N4Cyz\", function(module, exports) {\n\n$parcel$export(module.exports, \"ApiError\", () => $886306d2222aa47d$export$f2e832acab1bdd79);\n\nvar $e0exy = parcelRequire(\"e0exy\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Error class for errors that associated with unsuccessful HTTP responses.\n * It's throw by API category REST API handlers and GraphQL query handlers for now.\n */ class $886306d2222aa47d$export$f2e832acab1bdd79 extends (0, $e0exy.AmplifyError) {\n /**\n * The unwrapped HTTP response causing the given API error.\n */ get response() {\n return this._response ? $886306d2222aa47d$var$replicateApiErrorResponse(this._response) : undefined;\n }\n constructor(params){\n super(params);\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = $886306d2222aa47d$export$f2e832acab1bdd79;\n Object.setPrototypeOf(this, $886306d2222aa47d$export$f2e832acab1bdd79.prototype);\n if (params.response) this._response = params.response;\n }\n}\nconst $886306d2222aa47d$var$replicateApiErrorResponse = (response)=>({\n ...response,\n headers: {\n ...response.headers\n }\n });\n\n});\n\n\n\nparcelRegister(\"4gdZ0\", function(module, exports) {\n\nvar $1qbEC = parcelRequire(\"1qbEC\");\n\nvar $g5tdz = parcelRequire(\"g5tdz\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * GET HTTP request\n * @param {GetInput} input - Input for GET operation\n * @returns {GetOperation} Operation for GET request\n * @throws - {@link RestApiError}\n * @example\n * Send a GET request\n * ```js\n * import { get, isCancelError } from '@aws-amplify/api';\n *\n * const { body } = await get({\n * apiName,\n * path,\n * options: {\n * headers, // Optional, A map of custom header key/values\n * body, // Optional, JSON object or FormData\n * queryParams, // Optional, A map of query strings\n * }\n * }).response;\n * const data = await body.json();\n * ```\n * @example\n * Cancel a GET request\n *\n * ```js\n * import { get, isCancelError } from '@aws-amplify/api';\n *\n * const { response, cancel } = get({apiName, path, options});\n * cancel(message);\n * try {\n * await response;\n * } cache (e) {\n * if (isCancelError(e)) {\n * // handle request cancellation\n * }\n * //...\n * }\n * ```\n */ const $3326d8896d8e99ec$export$3988ae62b71be9a3 = (input)=>(0, $g5tdz.get)((0, $1qbEC.Amplify), input);\n/**\n * POST HTTP request\n * @param {PostInput} input - Input for POST operation\n * @returns {PostOperation} Operation for POST request\n * @throws - {@link RestApiError}\n * @example\n * Send a POST request\n * ```js\n * import { post, isCancelError } from '@aws-amplify/api';\n *\n * const { body } = await post({\n * apiName,\n * path,\n * options: {\n * headers, // Optional, A map of custom header key/values\n * body, // Optional, JSON object or FormData\n * queryParams, // Optional, A map of query strings\n * }\n * }).response;\n * const data = await body.json();\n * ```\n * @example\n * Cancel a POST request\n *\n * ```js\n * import { post, isCancelError } from '@aws-amplify/api';\n *\n * const { response, cancel } = post({apiName, path, options});\n * cancel(message);\n * try {\n * await response;\n * } cache (e) {\n * if (isCancelError(e)) {\n * // handle request cancellation\n * }\n * //...\n * }\n * ```\n */ const $3326d8896d8e99ec$export$299ba2dee77727e9 = (input)=>(0, $g5tdz.post)((0, $1qbEC.Amplify), input);\n/**\n * PUT HTTP request\n * @param {PutInput} input - Input for PUT operation\n * @returns {PutOperation} Operation for PUT request\n * @throws - {@link RestApiError}\n * @example\n * Send a PUT request\n * ```js\n * import { put, isCancelError } from '@aws-amplify/api';\n *\n * const { body } = await put({\n * apiName,\n * path,\n * options: {\n * headers, // Optional, A map of custom header key/values\n * body, // Optional, JSON object or FormData\n * queryParams, // Optional, A map of query strings\n * }\n * }).response;\n * const data = await body.json();\n * ```\n * @example\n * Cancel a PUT request\n * ```js\n * import { put, isCancelError } from '@aws-amplify/api';\n *\n * const { response, cancel } = put({apiName, path, options});\n * cancel(message);\n * try {\n * await response;\n * } cache (e) {\n * if (isCancelError(e)) {\n * // handle request cancellation\n * }\n * //...\n * }\n * ```\n */ const $3326d8896d8e99ec$export$327f7b26ebf455db = (input)=>(0, $g5tdz.put)((0, $1qbEC.Amplify), input);\n/**\n * DELETE HTTP request\n * @param {DeleteInput} input - Input for DELETE operation\n * @returns {DeleteOperation} Operation for DELETE request\n * @throws - {@link RestApiError}\n * @example\n * Send a DELETE request\n * ```js\n * import { del } from '@aws-amplify/api';\n *\n * const { statusCode } = await del({\n * apiName,\n * path,\n * options: {\n * headers, // Optional, A map of custom header key/values\n * queryParams, // Optional, A map of query strings\n * }\n * }).response;\n * ```\n */ const $3326d8896d8e99ec$export$1d2f21e549771e67 = (input)=>(0, $g5tdz.del)((0, $1qbEC.Amplify), input);\n/**\n * HEAD HTTP request\n * @param {HeadInput} input - Input for HEAD operation\n * @returns {HeadOperation} Operation for HEAD request\n * @throws - {@link RestApiError}\n * @example\n * Send a HEAD request\n * ```js\n * import { head, isCancelError } from '@aws-amplify/api';\n *\n * const { headers, statusCode } = await head({\n * apiName,\n * path,\n * options: {\n * headers, // Optional, A map of custom header key/values\n * queryParams, // Optional, A map of query strings\n * }\n * }),response;\n * ```\n *\n */ const $3326d8896d8e99ec$export$5fd5031fecdacec3 = (input)=>(0, $g5tdz.head)((0, $1qbEC.Amplify), input);\n/**\n * PATCH HTTP request\n * @param {PatchInput} input - Input for PATCH operation\n * @returns {PatchOperation} Operation for PATCH request\n * @throws - {@link RestApiError}\n * @example\n * Send a PATCH request\n * ```js\n * import { patch } from '@aws-amplify/api';\n *\n * const { body } = await patch({\n * apiName,\n * path,\n * options: {\n * headers, // Optional, A map of custom header key/values\n * body, // Optional, JSON object or FormData\n * queryParams, // Optional, A map of query strings\n * }\n * }).response;\n * const data = await body.json();\n * ```\n *\n * @example\n * Cancel a PATCH request\n * ```js\n * import { patch, isCancelError } from '@aws-amplify/api';\n *\n * const { response, cancel } = patch({apiName, path, options});\n * cancel(message);\n * try {\n * await response;\n * } cache (e) {\n * if (isCancelError(e)) {\n * // handle request cancellation\n * }\n * //...\n * }\n * ```\n */ const $3326d8896d8e99ec$export$b76953f99ab2be78 = (input)=>(0, $g5tdz.patch)((0, $1qbEC.Amplify), input);\n\n});\nparcelRegister(\"g5tdz\", function(module, exports) {\n\n$parcel$export(module.exports, \"get\", () => $739a77b68798142b$export$3988ae62b71be9a3);\n$parcel$export(module.exports, \"post\", () => $739a77b68798142b$export$299ba2dee77727e9);\n$parcel$export(module.exports, \"put\", () => $739a77b68798142b$export$327f7b26ebf455db);\n$parcel$export(module.exports, \"del\", () => $739a77b68798142b$export$1d2f21e549771e67);\n$parcel$export(module.exports, \"head\", () => $739a77b68798142b$export$5fd5031fecdacec3);\n$parcel$export(module.exports, \"patch\", () => $739a77b68798142b$export$b76953f99ab2be78);\n\nvar $hj5OQ = parcelRequire(\"hj5OQ\");\n\nvar $a5hgs = parcelRequire(\"a5hgs\");\n\n\nparcelRequire(\"jaclz\");\n\nvar $269lJ = parcelRequire(\"269lJ\");\n\nvar $jDIGB = parcelRequire(\"jDIGB\");\n\nvar $hoxjv = parcelRequire(\"hoxjv\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $739a77b68798142b$var$publicHandler = (amplify, options, method)=>(0, $hj5OQ.createCancellableOperation)(async (abortSignal)=>{\n const { apiName: apiName, options: apiOptions = {}, path: apiPath } = options;\n const url = (0, $269lJ.resolveApiUrl)(amplify, apiName, apiPath, apiOptions?.queryParams);\n const libraryConfigHeaders = await amplify.libraryOptions?.API?.REST?.headers?.({\n apiName: apiName\n });\n const { headers: invocationHeaders = {} } = apiOptions;\n const headers = {\n // custom headers from invocation options should precede library options\n ...libraryConfigHeaders,\n ...invocationHeaders\n };\n const signingServiceInfo = (0, $a5hgs.parseSigningInfo)(url, {\n amplify: amplify,\n apiName: apiName\n });\n (0, $jDIGB.logger).debug(method, url, headers, `IAM signing options: ${JSON.stringify(signingServiceInfo)}`);\n return (0, $hoxjv.transferHandler)(amplify, {\n ...apiOptions,\n url: url,\n method: method,\n headers: headers,\n abortSignal: abortSignal\n }, signingServiceInfo);\n });\nconst $739a77b68798142b$export$3988ae62b71be9a3 = (amplify, input)=>$739a77b68798142b$var$publicHandler(amplify, input, \"GET\");\nconst $739a77b68798142b$export$299ba2dee77727e9 = (amplify, input)=>$739a77b68798142b$var$publicHandler(amplify, input, \"POST\");\nconst $739a77b68798142b$export$327f7b26ebf455db = (amplify, input)=>$739a77b68798142b$var$publicHandler(amplify, input, \"PUT\");\nconst $739a77b68798142b$export$1d2f21e549771e67 = (amplify, input)=>$739a77b68798142b$var$publicHandler(amplify, input, \"DELETE\");\nconst $739a77b68798142b$export$5fd5031fecdacec3 = (amplify, input)=>$739a77b68798142b$var$publicHandler(amplify, input, \"HEAD\");\nconst $739a77b68798142b$export$b76953f99ab2be78 = (amplify, input)=>$739a77b68798142b$var$publicHandler(amplify, input, \"PATCH\");\n\n});\nparcelRegister(\"hj5OQ\", function(module, exports) {\n\n$parcel$export(module.exports, \"createCancellableOperation\", () => $ba05af205170c6e9$export$52e72f0a376807e8);\n\nvar $3Qiot = parcelRequire(\"3Qiot\");\n\nparcelRequire(\"jaclz\");\n\nvar $fFah5 = parcelRequire(\"fFah5\");\n\nvar $jDIGB = parcelRequire(\"jDIGB\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */ function $ba05af205170c6e9$export$52e72f0a376807e8(handler, abortController) {\n const isInternalPost = (handler)=>!!abortController;\n // For creating a cancellable operation for public REST APIs, we need to create an AbortController\n // internally. Whereas for internal POST APIs, we need to accept in the AbortController from the\n // callers.\n const publicApisAbortController = new AbortController();\n const publicApisAbortSignal = publicApisAbortController.signal;\n const internalPostAbortSignal = abortController?.signal;\n let abortReason;\n const job = async ()=>{\n try {\n const response = await (isInternalPost(handler) ? handler() : handler(publicApisAbortSignal));\n if (response.statusCode >= 300) throw await (0, $fFah5.parseRestApiServiceError)(response);\n return response;\n } catch (error) {\n const abortSignal = internalPostAbortSignal ?? publicApisAbortSignal;\n const message = abortReason ?? abortSignal.reason;\n if (error.name === \"AbortError\" || abortSignal?.aborted === true) {\n const canceledError = new (0, $3Qiot.CanceledError)({\n ...message && {\n message: message\n },\n underlyingError: error\n });\n (0, $jDIGB.logger).debug(error);\n throw canceledError;\n }\n (0, $jDIGB.logger).debug(error);\n throw error;\n }\n };\n if (isInternalPost()) return job();\n else {\n const cancel = (abortMessage)=>{\n if (publicApisAbortSignal.aborted === true) return;\n publicApisAbortController.abort(abortMessage);\n // If abort reason is not supported, set a scoped reasons instead. The reason property inside an\n // AbortSignal is a readonly property and trying to set it would throw an error.\n if (abortMessage && publicApisAbortSignal.reason !== abortMessage) abortReason = abortMessage;\n };\n return {\n response: job(),\n cancel: cancel\n };\n }\n}\n\n});\nparcelRegister(\"jaclz\", function(module, exports) {\n\n$parcel$export(module.exports, \"RestApiValidationErrorCode\", () => $aa90e1be24f1eaa0$export$8684d9f0176ec7fd);\n$parcel$export(module.exports, \"validationErrorMap\", () => $aa90e1be24f1eaa0$export$195137955146d376);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar $aa90e1be24f1eaa0$export$8684d9f0176ec7fd;\n(function(RestApiValidationErrorCode) {\n RestApiValidationErrorCode[\"InvalidApiName\"] = \"InvalidApiName\";\n})($aa90e1be24f1eaa0$export$8684d9f0176ec7fd || ($aa90e1be24f1eaa0$export$8684d9f0176ec7fd = {}));\nconst $aa90e1be24f1eaa0$export$195137955146d376 = {\n [$aa90e1be24f1eaa0$export$8684d9f0176ec7fd.InvalidApiName]: {\n message: \"API name is invalid.\",\n recoverySuggestion: \"Check if the API name matches the one in your configuration or `aws-exports.js`\"\n }\n};\n\n});\n\nparcelRegister(\"fFah5\", function(module, exports) {\n\n$parcel$export(module.exports, \"parseRestApiServiceError\", () => $eed1162a5b8f7824$export$cdf23200529f687c);\n\nvar $bM38a = parcelRequire(\"bM38a\");\n\nvar $elLC1 = parcelRequire(\"elLC1\");\nparcelRequire(\"jaclz\");\n/**\n * Parses both AWS and non-AWS error responses coming from the users' backend code.\n * * AWS errors generated by the AWS services(e.g. API Gateway, Bedrock). They can be Signature errors,\n * ClockSkew errors, etc. These responses will be parsed to errors with proper name and message from the AWS\n * services.\n * * non-AWS errors thrown by the user code. They can contain any headers or body. Users need to access the\n * error.response to get the headers and body and parse them accordingly. The JS error name and message will\n * be `UnknownError` and `Unknown error` respectively.\n */ const $eed1162a5b8f7824$export$cdf23200529f687c = async (response)=>{\n if (!response) // Response is not considered an error.\n return;\n const parsedAwsError = await (0, $bM38a.parseJsonError)($eed1162a5b8f7824$var$stubErrorResponse(response));\n if (!parsedAwsError) // Response is not considered an error.\n return;\n else {\n const bodyText = await response.body?.text();\n return $eed1162a5b8f7824$var$buildRestApiError(parsedAwsError, {\n statusCode: response.statusCode,\n headers: response.headers,\n body: bodyText\n });\n }\n};\n/**\n * The response object needs to be stub here because the parseAwsJsonError assumes the response body to be valid JSON.\n * Although this is true for AWS services, it is not true for responses from user's code. Once the response body is\n * unwrapped as JSON(and fail), it cannot be read as text again. Therefore, we need to stub the response body here to\n * make sure we can read the error response body as a JSON, and may fall back to read as text if it is not a valid JSON.\n */ const $eed1162a5b8f7824$var$stubErrorResponse = (response)=>{\n let bodyTextPromise = undefined;\n const bodyProxy = new Proxy(response.body, {\n get (target, prop, receiver) {\n if (prop === \"json\") // For potential AWS errors, error parser will try to parse the body as JSON first.\n return async ()=>{\n if (!bodyTextPromise) bodyTextPromise = target.text();\n try {\n return JSON.parse(await bodyTextPromise);\n } catch (error) {\n // If response body is not a valid JSON, we stub it to be an empty object and eventually parsed\n // as an unknown error\n return {};\n }\n };\n else if (prop === \"text\") // For non-AWS errors, users can access the body as a string as a fallback.\n return async ()=>{\n if (!bodyTextPromise) bodyTextPromise = target.text();\n return bodyTextPromise;\n };\n else return Reflect.get(target, prop, receiver);\n }\n });\n const responseProxy = new Proxy(response, {\n get (target, prop, receiver) {\n if (prop === \"body\") return bodyProxy;\n else return Reflect.get(target, prop, receiver);\n }\n });\n return responseProxy;\n};\n/**\n * Utility to create a new RestApiError from a service error.\n */ const $eed1162a5b8f7824$var$buildRestApiError = (error, response)=>{\n const restApiError = new (0, $elLC1.RestApiError)({\n name: error?.name,\n message: error.message,\n underlyingError: error,\n response: response\n });\n // $metadata is only required for backwards compatibility.\n return Object.assign(restApiError, {\n $metadata: error.$metadata\n });\n};\n\n});\n\nparcelRegister(\"jDIGB\", function(module, exports) {\n\n$parcel$export(module.exports, \"logger\", () => $11b826f7e5531aec$export$af88d00dbe7f521);\n\nvar $gJw02 = parcelRequire(\"gJw02\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $11b826f7e5531aec$export$af88d00dbe7f521 = new (0, $gJw02.ConsoleLogger)(\"RestApis\");\n\n});\n\n\nparcelRegister(\"a5hgs\", function(module, exports) {\n\n$parcel$export(module.exports, \"parseSigningInfo\", () => $e4af76b08febfda7$export$654dd12592b26445);\n\nvar $2d61L = parcelRequire(\"2d61L\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Infer the signing service and region from the given URL, and for REST API only, from the Amplify configuration.\n * It supports raw API Gateway endpoint and AppSync endpoint.\n *\n * @internal\n */ const $e4af76b08febfda7$export$654dd12592b26445 = (url, restApiOptions)=>{\n const { service: signingService = (0, $2d61L.DEFAULT_REST_IAM_SIGNING_SERVICE), region: signingRegion = (0, $2d61L.DEFAULT_IAM_SIGNING_REGION) } = restApiOptions?.amplify.getConfig()?.API?.REST?.[restApiOptions?.apiName] ?? {};\n const { hostname: hostname } = url;\n const [, service, region] = (0, $2d61L.APIG_HOSTNAME_PATTERN).exec(hostname) ?? [];\n if (service === (0, $2d61L.DEFAULT_REST_IAM_SIGNING_SERVICE)) // The configured endpoint is an API Gateway endpoint\n // @see: https://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-call-api.html\n return {\n service: service,\n region: region ?? signingRegion\n };\n else if (service === \"appsync-api\") // AppSync endpoint is internally supported because GraphQL operation will send request using POST handler.\n // example: https://xxxx.appsync-api.us-east-1.amazonaws.com/graphql\n return {\n service: \"appsync\",\n region: region ?? signingRegion\n };\n else return {\n service: signingService,\n region: signingRegion\n };\n};\n\n});\nparcelRegister(\"2d61L\", function(module, exports) {\n\n$parcel$export(module.exports, \"DEFAULT_REST_IAM_SIGNING_SERVICE\", () => $f628e48ffad78896$export$f8920556a4a329aa);\n$parcel$export(module.exports, \"DEFAULT_IAM_SIGNING_REGION\", () => $f628e48ffad78896$export$c5a0e6a7389a299);\n$parcel$export(module.exports, \"APIG_HOSTNAME_PATTERN\", () => $f628e48ffad78896$export$df1c07b38ace96c2);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $f628e48ffad78896$export$f8920556a4a329aa = \"execute-api\";\nconst $f628e48ffad78896$export$30f5dbb18c8d33cd = \"appsync-api\";\nconst $f628e48ffad78896$export$c5a0e6a7389a299 = \"us-east-1\";\n/**\n * The REST endpoints generated by API Gateway\n * @see {@link https://docs.aws.amazon.com/general/latest/gr/apigateway.html#apigateway_region_data_plane}\n */ const $f628e48ffad78896$export$df1c07b38ace96c2 = /^.+\\.([a-z0-9-]+)\\.([a-z0-9-]+)\\.amazonaws\\.com/;\n\n});\n\n\nparcelRegister(\"269lJ\", function(module, exports) {\n\n$parcel$export(module.exports, \"resolveApiUrl\", () => $650f468c821576c6$export$74befe2cc96b2f5);\n\nvar $7Ar4G = parcelRequire(\"7Ar4G\");\n\nvar $elLC1 = parcelRequire(\"elLC1\");\n\nvar $8sR3l = parcelRequire(\"8sR3l\");\n\nvar $jaclz = parcelRequire(\"jaclz\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Resolve the REST API request URL by:\n * 1. Loading the REST API endpoint from the Amplify configuration with corresponding API name.\n * 2. Appending the path to the endpoint.\n * 3. Merge the query parameters from path and the queryParameter argument which is taken from the public REST API\n * options.\n * 4. Validating the resulting URL string.\n *\n * @internal\n */ const $650f468c821576c6$export$74befe2cc96b2f5 = (amplify, apiName, path, queryParams)=>{\n const urlStr = amplify.getConfig()?.API?.REST?.[apiName]?.endpoint;\n (0, $8sR3l.assertValidationError)(!!urlStr, (0, $jaclz.RestApiValidationErrorCode).InvalidApiName);\n try {\n const url = new (0, $7Ar4G.AmplifyUrl)(urlStr + path);\n if (queryParams) {\n const mergedQueryParams = new (0, $7Ar4G.AmplifyUrlSearchParams)(url.searchParams);\n Object.entries(queryParams).forEach(([key, value])=>{\n mergedQueryParams.set(key, value);\n });\n url.search = new (0, $7Ar4G.AmplifyUrlSearchParams)(mergedQueryParams).toString();\n }\n return url;\n } catch (error) {\n throw new (0, $elLC1.RestApiError)({\n name: (0, $jaclz.RestApiValidationErrorCode).InvalidApiName,\n ...(0, $jaclz.validationErrorMap)[(0, $jaclz.RestApiValidationErrorCode).InvalidApiName],\n recoverySuggestion: `Please make sure the REST endpoint URL is a valid URL string. Got ${urlStr}`\n });\n }\n};\n\n});\nparcelRegister(\"8sR3l\", function(module, exports) {\n\n$parcel$export(module.exports, \"assertValidationError\", () => $e66dc82f182fbc3a$export$45936001d12f9b53);\n\nvar $elLC1 = parcelRequire(\"elLC1\");\n\nvar $jaclz = parcelRequire(\"jaclz\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */ function $e66dc82f182fbc3a$export$45936001d12f9b53(assertion, name) {\n const { message: message, recoverySuggestion: recoverySuggestion } = (0, $jaclz.validationErrorMap)[name];\n if (!assertion) throw new (0, $elLC1.RestApiError)({\n name: name,\n message: message,\n recoverySuggestion: recoverySuggestion\n });\n}\n\n});\n\n\nparcelRegister(\"hoxjv\", function(module, exports) {\n\n$parcel$export(module.exports, \"transferHandler\", () => $e88aec0e8d8b5a65$export$28f1d6139f3d8c0a);\n\nvar $14EVL = parcelRequire(\"14EVL\");\nvar $4ZD6k = parcelRequire(\"4ZD6k\");\nvar $5D9nd = parcelRequire(\"5D9nd\");\nvar $itEnq = parcelRequire(\"itEnq\");\n\nparcelRequire(\"jaclz\");\n\nvar $fFah5 = parcelRequire(\"fFah5\");\n\nvar $jDIGB = parcelRequire(\"jDIGB\");\n\nvar $a5hgs = parcelRequire(\"a5hgs\");\n\nvar $iURDH = parcelRequire(\"iURDH\");\n/**\n * Make REST API call with best-effort IAM auth.\n * @param amplify Amplify instance to to resolve credentials and tokens. Should use different instance in client-side\n * and SSR\n * @param options Options accepted from public API options when calling the handlers.\n * @param signingServiceInfo Internal-only options enable IAM auth as well as to to overwrite the IAM signing service\n * and region. If specified, and NONE of API Key header or Auth header is present, IAM auth will be used.\n *\n * @internal\n */ const $e88aec0e8d8b5a65$export$28f1d6139f3d8c0a = async (amplify, options, signingServiceInfo)=>{\n const { url: url, method: method, headers: headers, body: body, withCredentials: withCredentials, abortSignal: abortSignal } = options;\n const resolvedBody = body ? body instanceof FormData ? body : JSON.stringify(body ?? \"\") : undefined;\n const resolvedHeaders = (0, $iURDH.resolveHeaders)(headers, body);\n const request = {\n url: url,\n headers: resolvedHeaders,\n method: method,\n body: resolvedBody\n };\n const baseOptions = {\n retryDecider: (0, $4ZD6k.getRetryDecider)((0, $fFah5.parseRestApiServiceError)),\n computeDelay: (0, $5D9nd.jitteredBackoff),\n withCrossDomainCredentials: withCredentials,\n abortSignal: abortSignal\n };\n const isIamAuthApplicable = $e88aec0e8d8b5a65$var$iamAuthApplicable(request, signingServiceInfo);\n let response;\n const credentials = await $e88aec0e8d8b5a65$var$resolveCredentials(amplify);\n if (isIamAuthApplicable && credentials) {\n const signingInfoFromUrl = (0, $a5hgs.parseSigningInfo)(url);\n const signingService = signingServiceInfo?.service ?? signingInfoFromUrl.service;\n const signingRegion = signingServiceInfo?.region ?? signingInfoFromUrl.region;\n response = await (0, $14EVL.authenticatedHandler)(request, {\n ...baseOptions,\n credentials: credentials,\n region: signingRegion,\n service: signingService\n });\n } else response = await (0, $itEnq.unauthenticatedHandler)(request, {\n ...baseOptions\n });\n // Clean-up un-modeled properties from response.\n return {\n statusCode: response.statusCode,\n headers: response.headers,\n body: response.body\n };\n};\nconst $e88aec0e8d8b5a65$var$iamAuthApplicable = ({ headers: headers }, signingServiceInfo)=>!headers.authorization && !headers[\"x-api-key\"] && !!signingServiceInfo;\nconst $e88aec0e8d8b5a65$var$resolveCredentials = async (amplify)=>{\n try {\n const { credentials: credentials } = await amplify.Auth.fetchAuthSession();\n if (credentials) return credentials;\n } catch (e) {\n (0, $jDIGB.logger).debug(\"No credentials available, the request will be unsigned.\");\n }\n return null;\n};\n\n});\nparcelRegister(\"14EVL\", function(module, exports) {\n\n$parcel$export(module.exports, \"authenticatedHandler\", () => $a783817ff6aa47e2$export$caa14993632515f8);\n\nvar $aWNly = parcelRequire(\"aWNly\");\n\n\n\nvar $3k9Yx = parcelRequire(\"3k9Yx\");\n\nvar $aBoxv = parcelRequire(\"aBoxv\");\n\nvar $8e8Xp = parcelRequire(\"8e8Xp\");\n\nvar $anVi4 = parcelRequire(\"anVi4\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $a783817ff6aa47e2$export$caa14993632515f8 = (0, $8e8Xp.composeTransferHandler)((0, $anVi4.fetchTransferHandler), [\n (0, $aBoxv.userAgentMiddleware),\n (0, $aWNly.retryMiddleware),\n (0, $3k9Yx.signingMiddleware)\n]);\n\n});\nparcelRegister(\"3k9Yx\", function(module, exports) {\n\n$parcel$export(module.exports, \"signingMiddleware\", () => $5e05a21ab6358ec7$export$31cfc6b101983bdf);\n\nvar $hVfGq = parcelRequire(\"hVfGq\");\nparcelRequire(\"78v1Z\");\nparcelRequire(\"lUOK3\");\n\nvar $dsAqn = parcelRequire(\"dsAqn\");\n\nvar $apgva = parcelRequire(\"apgva\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Middleware that SigV4 signs request with AWS credentials, and correct system clock offset.\n * This middleware is expected to be placed after retry middleware.\n */ const $5e05a21ab6358ec7$export$31cfc6b101983bdf = ({ credentials: credentials, region: region, service: service, uriEscapePath: uriEscapePath = true })=>{\n let currentSystemClockOffset;\n return (next)=>async function signingMiddleware(request) {\n currentSystemClockOffset = currentSystemClockOffset ?? 0;\n const signRequestOptions = {\n credentials: typeof credentials === \"function\" ? await credentials() : credentials,\n signingDate: (0, $dsAqn.getSkewCorrectedDate)(currentSystemClockOffset),\n signingRegion: region,\n signingService: service,\n uriEscapePath: uriEscapePath\n };\n const signedRequest = await (0, $hVfGq.signRequest)(request, signRequestOptions);\n const response = await next(signedRequest);\n // Update system clock offset if response contains date header, regardless of the status code.\n // non-2xx response will still be returned from next handler instead of thrown, because it's\n // only thrown by the retry middleware.\n const dateString = $5e05a21ab6358ec7$var$getDateHeader(response);\n if (dateString) currentSystemClockOffset = (0, $apgva.getUpdatedSystemClockOffset)(Date.parse(dateString), currentSystemClockOffset);\n return response;\n };\n};\nconst $5e05a21ab6358ec7$var$getDateHeader = ({ headers: headers } = {})=>headers?.date ?? headers?.Date ?? headers?.[\"x-amz-date\"];\n\n});\nparcelRegister(\"hVfGq\", function(module, exports) {\n\n$parcel$export(module.exports, \"signRequest\", () => $3b8b0a35c7d2f42e$export$aa7d25cddbad24ed);\n\nvar $k9Bfc = parcelRequire(\"k9Bfc\");\n\nvar $9a7M8 = parcelRequire(\"9a7M8\");\n\nvar $5lANR = parcelRequire(\"5lANR\");\n\nvar $cmsYW = parcelRequire(\"cmsYW\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Given a `HttpRequest`, returns a Signature Version 4 signed `HttpRequest`.\n *\n * @param request `HttpRequest` to be signed.\n * @param signRequestOptions `SignRequestOptions` object containing values used to construct the signature.\n * @returns A `HttpRequest` with authentication headers which can grant temporary access to AWS resources.\n */ const $3b8b0a35c7d2f42e$export$aa7d25cddbad24ed = (request, options)=>{\n const signingValues = (0, $9a7M8.getSigningValues)(options);\n const { accessKeyId: accessKeyId, credentialScope: credentialScope, longDate: longDate, sessionToken: sessionToken } = signingValues;\n // create the request to sign\n const headers = {\n ...request.headers\n };\n headers[0, $5lANR.HOST_HEADER] = request.url.host;\n headers[0, $5lANR.AMZ_DATE_HEADER] = longDate;\n if (sessionToken) headers[0, $5lANR.TOKEN_HEADER] = sessionToken;\n const requestToSign = {\n ...request,\n headers: headers\n };\n // calculate and add the signature to the request\n const signature = (0, $cmsYW.getSignature)(requestToSign, signingValues);\n const credentialEntry = `Credential=${accessKeyId}/${credentialScope}`;\n const signedHeadersEntry = `SignedHeaders=${(0, $k9Bfc.getSignedHeaders)(headers)}`;\n const signatureEntry = `Signature=${signature}`;\n headers[0, $5lANR.AUTH_HEADER] = `${0, $5lANR.SHA256_ALGORITHM_IDENTIFIER} ${credentialEntry}, ${signedHeadersEntry}, ${signatureEntry}`;\n return requestToSign;\n};\n\n});\nparcelRegister(\"k9Bfc\", function(module, exports) {\n\n$parcel$export(module.exports, \"getSignedHeaders\", () => $801e30203e6ee81f$export$812d6f56efda9cfa);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns signed headers.\n *\n * @param headers `headers` from the request.\n * @returns List of headers included in canonical headers, separated by semicolons (;). This indicates which headers\n * are part of the signing process. Header names must use lowercase characters and must appear in alphabetical order.\n *\n * @internal\n */ const $801e30203e6ee81f$export$812d6f56efda9cfa = (headers)=>Object.keys(headers).map((key)=>key.toLowerCase()).sort().join(\";\");\n\n});\n\nparcelRegister(\"9a7M8\", function(module, exports) {\n\n$parcel$export(module.exports, \"getSigningValues\", () => $7c254d6715dfe620$export$188c70d4d3596d39);\n\nvar $ixXuO = parcelRequire(\"ixXuO\");\n\nvar $9h49C = parcelRequire(\"9h49C\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Extracts common values used for signing both requests and urls.\n *\n * @param options `SignRequestOptions` object containing values used to construct the signature.\n * @returns Common `SigningValues` used for signing.\n *\n * @internal\n */ const $7c254d6715dfe620$export$188c70d4d3596d39 = ({ credentials: credentials, signingDate: signingDate = new Date(), signingRegion: signingRegion, signingService: signingService, uriEscapePath: uriEscapePath = true })=>{\n // get properties from credentials\n const { accessKeyId: accessKeyId, secretAccessKey: secretAccessKey, sessionToken: sessionToken } = credentials;\n // get formatted dates for signing\n const { longDate: longDate, shortDate: shortDate } = (0, $9h49C.getFormattedDates)(signingDate);\n // copy header and set signing properties\n const credentialScope = (0, $ixXuO.getCredentialScope)(shortDate, signingRegion, signingService);\n return {\n accessKeyId: accessKeyId,\n credentialScope: credentialScope,\n longDate: longDate,\n secretAccessKey: secretAccessKey,\n sessionToken: sessionToken,\n shortDate: shortDate,\n signingRegion: signingRegion,\n signingService: signingService,\n uriEscapePath: uriEscapePath\n };\n};\n\n});\nparcelRegister(\"ixXuO\", function(module, exports) {\n\n$parcel$export(module.exports, \"getCredentialScope\", () => $cf06eb9d7fea015f$export$a720a7c8dd7ab696);\n\nvar $5lANR = parcelRequire(\"5lANR\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns the credential scope which restricts the resulting signature to the specified region and service.\n *\n * @param date Current date in the format 'YYYYMMDD'.\n * @param region AWS region in which the service resides.\n * @param service Service to which the signed request is being sent.\n *\n * @returns A string representing the credential scope with format 'YYYYMMDD/region/service/aws4_request'.\n *\n * @internal\n */ const $cf06eb9d7fea015f$export$a720a7c8dd7ab696 = (date, region, service)=>`${date}/${region}/${service}/${0, $5lANR.KEY_TYPE_IDENTIFIER}`;\n\n});\nparcelRegister(\"5lANR\", function(module, exports) {\n\n$parcel$export(module.exports, \"AUTH_HEADER\", () => $63c567658c1dc4ca$export$9924a64a4b8b0d58);\n$parcel$export(module.exports, \"HOST_HEADER\", () => $63c567658c1dc4ca$export$96307741595055fc);\n$parcel$export(module.exports, \"AMZ_DATE_HEADER\", () => $63c567658c1dc4ca$export$acf4b8bdf24aab34);\n$parcel$export(module.exports, \"TOKEN_HEADER\", () => $63c567658c1dc4ca$export$fdc81b663012a8d2);\n$parcel$export(module.exports, \"KEY_TYPE_IDENTIFIER\", () => $63c567658c1dc4ca$export$c4bf0942098f6bb);\n$parcel$export(module.exports, \"SHA256_ALGORITHM_IDENTIFIER\", () => $63c567658c1dc4ca$export$aba583fcf2c2a4e9);\n$parcel$export(module.exports, \"SIGNATURE_IDENTIFIER\", () => $63c567658c1dc4ca$export$c295e35583a9d67a);\n$parcel$export(module.exports, \"EMPTY_HASH\", () => $63c567658c1dc4ca$export$b445dbfd1d7f2d42);\n$parcel$export(module.exports, \"UNSIGNED_PAYLOAD\", () => $63c567658c1dc4ca$export$91f7321b40d9fd07);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// query params\nconst $63c567658c1dc4ca$export$186cd8495ba0377d = \"X-Amz-Algorithm\";\nconst $63c567658c1dc4ca$export$6e114beec37430d7 = \"X-Amz-Date\";\nconst $63c567658c1dc4ca$export$5c8e6dd7758f59d6 = \"X-Amz-Credential\";\nconst $63c567658c1dc4ca$export$a0afe6f3bbfaf76e = \"X-Amz-Expires\";\nconst $63c567658c1dc4ca$export$296a4bada3fe6343 = \"X-Amz-Region-Set\";\nconst $63c567658c1dc4ca$export$41ae838dc1e0f082 = \"X-Amz-Signature\";\nconst $63c567658c1dc4ca$export$2dcbb254f883c238 = \"X-Amz-SignedHeaders\";\nconst $63c567658c1dc4ca$export$8e1383b7eea7bee = \"X-Amz-Security-Token\";\n// headers\nconst $63c567658c1dc4ca$export$9924a64a4b8b0d58 = \"authorization\";\nconst $63c567658c1dc4ca$export$96307741595055fc = \"host\";\nconst $63c567658c1dc4ca$export$acf4b8bdf24aab34 = $63c567658c1dc4ca$export$6e114beec37430d7.toLowerCase();\nconst $63c567658c1dc4ca$export$fdc81b663012a8d2 = $63c567658c1dc4ca$export$8e1383b7eea7bee.toLowerCase();\n// identifiers\nconst $63c567658c1dc4ca$export$c4bf0942098f6bb = \"aws4_request\";\nconst $63c567658c1dc4ca$export$aba583fcf2c2a4e9 = \"AWS4-HMAC-SHA256\";\nconst $63c567658c1dc4ca$export$c295e35583a9d67a = \"AWS4\";\n// preset values\nconst $63c567658c1dc4ca$export$b445dbfd1d7f2d42 = \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\";\nconst $63c567658c1dc4ca$export$91f7321b40d9fd07 = \"UNSIGNED-PAYLOAD\";\n\n});\n\n\nparcelRegister(\"9h49C\", function(module, exports) {\n\n$parcel$export(module.exports, \"getFormattedDates\", () => $3e1220c52013c4f4$export$79cc774850e3b1b);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns expected date strings to be used in signing.\n *\n * @param date JavaScript `Date` object.\n * @returns `FormattedDates` object containing the following:\n * - longDate: A date string in 'YYYYMMDDThhmmssZ' format\n * - shortDate: A date string in 'YYYYMMDD' format\n *\n * @internal\n */ const $3e1220c52013c4f4$export$79cc774850e3b1b = (date)=>{\n const longDate = date.toISOString().replace(/[:\\-]|\\.\\d{3}/g, \"\");\n return {\n longDate: longDate,\n shortDate: longDate.slice(0, 8)\n };\n};\n\n});\n\n\nparcelRegister(\"cmsYW\", function(module, exports) {\n\n$parcel$export(module.exports, \"getSignature\", () => $68a3178cad332cbe$export$2f768fec5d73d91a);\n\nvar $9DDIC = parcelRequire(\"9DDIC\");\n\nvar $1JAiq = parcelRequire(\"1JAiq\");\n\nvar $9qHih = parcelRequire(\"9qHih\");\n\nvar $4NKll = parcelRequire(\"4NKll\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Calculates and returns an AWS API Signature.\n * https://docs.aws.amazon.com/IAM/latest/UserGuide/create-signed-request.html\n *\n * @param request `HttpRequest` to be signed.\n * @param signRequestOptions `SignRequestOptions` object containing values used to construct the signature.\n * @returns AWS API Signature to sign a request or url with.\n *\n * @internal\n */ const $68a3178cad332cbe$export$2f768fec5d73d91a = (request, { credentialScope: credentialScope, longDate: longDate, secretAccessKey: secretAccessKey, shortDate: shortDate, signingRegion: signingRegion, signingService: signingService, uriEscapePath: uriEscapePath })=>{\n // step 1: create a canonical request\n const canonicalRequest = (0, $1JAiq.getCanonicalRequest)(request, uriEscapePath);\n // step 2: create a hash of the canonical request\n const hashedRequest = (0, $9DDIC.getHashedDataAsHex)(null, canonicalRequest);\n // step 3: create a string to sign\n const stringToSign = (0, $4NKll.getStringToSign)(longDate, credentialScope, hashedRequest);\n // step 4: calculate the signature\n const signature = (0, $9DDIC.getHashedDataAsHex)((0, $9qHih.getSigningKey)(secretAccessKey, shortDate, signingRegion, signingService), stringToSign);\n return signature;\n};\n\n});\nparcelRegister(\"9DDIC\", function(module, exports) {\n\n$parcel$export(module.exports, \"getHashedData\", () => $e878efb7fb845f8e$export$1a568184069ac3c8);\n$parcel$export(module.exports, \"getHashedDataAsHex\", () => $e878efb7fb845f8e$export$45d3ccefb0f0c6da);\nparcelRequire(\"78v1Z\");\nvar $4xNDb = parcelRequire(\"4xNDb\");\n\nvar $lUOK3 = parcelRequire(\"lUOK3\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// TODO: V6 update to different crypto dependency?\n/**\n * Returns the hashed data a `Uint8Array`.\n *\n * @param key `SourceData` to be used as hashing key.\n * @param data Hashable `SourceData`.\n * @returns `Uint8Array` created from the data as input to a hash function.\n */ const $e878efb7fb845f8e$export$1a568184069ac3c8 = (key, data)=>{\n const sha256 = new (0, $4xNDb.Sha256)(key ?? undefined);\n sha256.update(data);\n // TODO: V6 flip to async digest\n const hashedData = sha256.digestSync();\n return hashedData;\n};\n/**\n * Returns the hashed data as a hex string.\n *\n * @param key `SourceData` to be used as hashing key.\n * @param data Hashable `SourceData`.\n * @returns String using lowercase hexadecimal characters created from the data as input to a hash function.\n *\n * @internal\n */ const $e878efb7fb845f8e$export$45d3ccefb0f0c6da = (key, data)=>{\n const hashedData = $e878efb7fb845f8e$export$1a568184069ac3c8(key, data);\n return (0, $lUOK3.toHex)(hashedData);\n};\n\n});\n\nparcelRegister(\"1JAiq\", function(module, exports) {\n\n$parcel$export(module.exports, \"getCanonicalRequest\", () => $1cff5c5577c43db0$export$78136353678f36ec);\n\nvar $1peWS = parcelRequire(\"1peWS\");\n\nvar $lbuB1 = parcelRequire(\"lbuB1\");\n\nvar $m3vdz = parcelRequire(\"m3vdz\");\n\nvar $3YqIC = parcelRequire(\"3YqIC\");\n\nvar $k9Bfc = parcelRequire(\"k9Bfc\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns a canonical request.\n *\n * @param request `HttpRequest` from which to create the canonical request from.\n * @param uriEscapePath Whether to uri encode the path as part of canonical uri. It's used for S3 only where the\n * pathname is already uri encoded, and the signing process is not expected to uri encode it again. Defaults to true.\n * @returns String created by by concatenating the following strings, separated by newline characters:\n * - HTTPMethod\n * - CanonicalUri\n * - CanonicalQueryString\n * - CanonicalHeaders\n * - SignedHeaders\n * - HashedPayload\n *\n * @internal\n */ const $1cff5c5577c43db0$export$78136353678f36ec = ({ body: body, headers: headers, method: method, url: url }, uriEscapePath = true)=>[\n method,\n (0, $m3vdz.getCanonicalUri)(url.pathname, uriEscapePath),\n (0, $lbuB1.getCanonicalQueryString)(url.searchParams),\n (0, $1peWS.getCanonicalHeaders)(headers),\n (0, $k9Bfc.getSignedHeaders)(headers),\n (0, $3YqIC.getHashedPayload)(body)\n ].join(\"\\n\");\n\n});\nparcelRegister(\"1peWS\", function(module, exports) {\n\n$parcel$export(module.exports, \"getCanonicalHeaders\", () => $802403cd603e7e8b$export$859d7f1bb55e2914);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns canonical headers.\n *\n * @param headers Headers from the request.\n * @returns Request headers that will be signed, and their values, separated by newline characters. Header names must\n * use lowercase characters, must appear in alphabetical order, and must be followed by a colon (:). For the values,\n * trim any leading or trailing spaces, convert sequential spaces to a single space, and separate the values\n * for a multi-value header using commas.\n *\n * @internal\n */ const $802403cd603e7e8b$export$859d7f1bb55e2914 = (headers)=>Object.entries(headers).map(([key, value])=>({\n key: key.toLowerCase(),\n value: value?.trim().replace(/\\s+/g, \" \") ?? \"\"\n })).sort((a, b)=>a.key < b.key ? -1 : 1).map((entry)=>`${entry.key}:${entry.value}\\n`).join(\"\");\n\n});\n\nparcelRegister(\"lbuB1\", function(module, exports) {\n\n$parcel$export(module.exports, \"getCanonicalQueryString\", () => $836086e14a5fbbdd$export$87a9cc45e3be0a17);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns a canonical query string.\n *\n * @param searchParams `searchParams` from the request url.\n * @returns URL-encoded query string parameters, separated by ampersands (&). Percent-encode reserved characters,\n * including the space character. Encode names and values separately. If there are empty parameters, append the equals\n * sign to the parameter name before encoding. After encoding, sort the parameters alphabetically by key name. If there\n * is no query string, use an empty string (\"\").\n *\n * @internal\n */ const $836086e14a5fbbdd$export$87a9cc45e3be0a17 = (searchParams)=>Array.from(searchParams).sort(([keyA, valA], [keyB, valB])=>{\n if (keyA === keyB) return valA < valB ? -1 : 1;\n return keyA < keyB ? -1 : 1;\n }).map(([key, val])=>`${$836086e14a5fbbdd$var$escapeUri(key)}=${$836086e14a5fbbdd$var$escapeUri(val)}`).join(\"&\");\nconst $836086e14a5fbbdd$var$escapeUri = (uri)=>encodeURIComponent(uri).replace(/[!'()*]/g, $836086e14a5fbbdd$var$hexEncode);\nconst $836086e14a5fbbdd$var$hexEncode = (c)=>`%${c.charCodeAt(0).toString(16).toUpperCase()}`;\n\n});\n\nparcelRegister(\"m3vdz\", function(module, exports) {\n\n$parcel$export(module.exports, \"getCanonicalUri\", () => $c23651d03b87ad66$export$4bbb144438cceb59);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns a canonical uri.\n *\n * @param pathname `pathname` from request url.\n * @param uriEscapePath Whether to uri encode the path as part of canonical uri. It's used for S3 only where the\n * pathname is already uri encoded, and the signing process is not expected to uri encode it again. Defaults to true.\n * @returns URI-encoded version of the absolute path component URL (everything between the host and the question mark\n * character (?) that starts the query string parameters). If the absolute path is empty, a forward slash character (/).\n *\n * @internal\n */ const $c23651d03b87ad66$export$4bbb144438cceb59 = (pathname, uriEscapePath = true)=>pathname ? uriEscapePath ? encodeURIComponent(pathname).replace(/%2F/g, \"/\") : pathname : \"/\";\n\n});\n\nparcelRegister(\"3YqIC\", function(module, exports) {\n\n$parcel$export(module.exports, \"getHashedPayload\", () => $d9f6bc20607e1fa8$export$b671a27d01dfc160);\n\nvar $5lANR = parcelRequire(\"5lANR\");\n\nvar $9DDIC = parcelRequire(\"9DDIC\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns the hashed payload.\n *\n * @param body `body` (payload) from the request.\n * @returns String created using the payload in the body of the HTTP request as input to a hash function. This string\n * uses lowercase hexadecimal characters. If the payload is empty, return precalculated result of an empty hash.\n *\n * @internal\n */ const $d9f6bc20607e1fa8$export$b671a27d01dfc160 = (body)=>{\n // return precalculated empty hash if body is undefined or null\n if (body == null) return 0, $5lANR.EMPTY_HASH;\n if ($d9f6bc20607e1fa8$var$isSourceData(body)) {\n const hashedData = (0, $9DDIC.getHashedDataAsHex)(null, body);\n return hashedData;\n }\n // Defined body is not signable. Return unsigned payload which may or may not be accepted by the service.\n return 0, $5lANR.UNSIGNED_PAYLOAD;\n};\nconst $d9f6bc20607e1fa8$var$isSourceData = (body)=>typeof body === \"string\" || ArrayBuffer.isView(body) || $d9f6bc20607e1fa8$var$isArrayBuffer(body);\nconst $d9f6bc20607e1fa8$var$isArrayBuffer = (arg)=>typeof ArrayBuffer === \"function\" && arg instanceof ArrayBuffer || Object.prototype.toString.call(arg) === \"[object ArrayBuffer]\";\n\n});\n\n\nparcelRegister(\"9qHih\", function(module, exports) {\n\n$parcel$export(module.exports, \"getSigningKey\", () => $20544ff12369282e$export$8b95a069d16dd783);\n\nvar $5lANR = parcelRequire(\"5lANR\");\n\nvar $9DDIC = parcelRequire(\"9DDIC\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns a signing key to be used for signing requests.\n *\n * @param secretAccessKey AWS secret access key from credentials.\n * @param date Current date in the format 'YYYYMMDD'.\n * @param region AWS region in which the service resides.\n * @param service Service to which the signed request is being sent.\n *\n * @returns `Uint8Array` calculated from its composite parts.\n *\n * @internal\n */ const $20544ff12369282e$export$8b95a069d16dd783 = (secretAccessKey, date, region, service)=>{\n const key = `${(0, $5lANR.SIGNATURE_IDENTIFIER)}${secretAccessKey}`;\n const dateKey = (0, $9DDIC.getHashedData)(key, date);\n const regionKey = (0, $9DDIC.getHashedData)(dateKey, region);\n const serviceKey = (0, $9DDIC.getHashedData)(regionKey, service);\n const signingKey = (0, $9DDIC.getHashedData)(serviceKey, (0, $5lANR.KEY_TYPE_IDENTIFIER));\n return signingKey;\n};\n\n});\n\nparcelRegister(\"4NKll\", function(module, exports) {\n\n$parcel$export(module.exports, \"getStringToSign\", () => $2e89d4e84567a0b9$export$ff872c70ad45fed1);\n\nvar $5lANR = parcelRequire(\"5lANR\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns a string to be signed.\n *\n * @param date Current date in the format 'YYYYMMDDThhmmssZ'.\n * @param credentialScope String representing the credential scope with format 'YYYYMMDD/region/service/aws4_request'.\n * @param hashedRequest Hashed canonical request.\n *\n * @returns A string created by by concatenating the following strings, separated by newline characters:\n * - Algorithm\n * - RequestDateTime\n * - CredentialScope\n * - HashedCanonicalRequest\n *\n * @internal\n */ const $2e89d4e84567a0b9$export$ff872c70ad45fed1 = (date, credentialScope, hashedRequest)=>[\n (0, $5lANR.SHA256_ALGORITHM_IDENTIFIER),\n date,\n credentialScope,\n hashedRequest\n ].join(\"\\n\");\n\n});\n\n\n\nparcelRegister(\"dsAqn\", function(module, exports) {\n\n$parcel$export(module.exports, \"getSkewCorrectedDate\", () => $0336c7502048c65b$export$86d5c90340985ada);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns a `Date` that is corrected for clock skew.\n *\n * @param systemClockOffset The offset of the system clock in milliseconds.\n *\n * @returns `Date` representing the current time adjusted by the system clock offset.\n *\n * @internal\n */ const $0336c7502048c65b$export$86d5c90340985ada = (systemClockOffset)=>new Date(Date.now() + systemClockOffset);\n\n});\n\nparcelRegister(\"apgva\", function(module, exports) {\n\n$parcel$export(module.exports, \"getUpdatedSystemClockOffset\", () => $e5b4b6cb4653f17c$export$1ed4d48b860b1348);\n\nvar $bQnWW = parcelRequire(\"bQnWW\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Returns the difference between clock time and the current system time if clock is skewed.\n *\n * @param clockTimeInMilliseconds Clock time in milliseconds.\n * @param currentSystemClockOffset Current system clock offset in milliseconds.\n *\n * @internal\n */ const $e5b4b6cb4653f17c$export$1ed4d48b860b1348 = (clockTimeInMilliseconds, currentSystemClockOffset)=>{\n if ((0, $bQnWW.isClockSkewed)(clockTimeInMilliseconds, currentSystemClockOffset)) return clockTimeInMilliseconds - Date.now();\n return currentSystemClockOffset;\n};\n\n});\nparcelRegister(\"bQnWW\", function(module, exports) {\n\n$parcel$export(module.exports, \"isClockSkewed\", () => $b350468427cf28cf$export$c162a01d4a03ea6f);\n\nvar $dsAqn = parcelRequire(\"dsAqn\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// 5 mins in milliseconds. Ref: https://github.com/aws/aws-sdk-js-v3/blob/6c0f44fab30a1bb2134af47362a31332abc3666b/packages/middleware-signing/src/utils/isClockSkewed.ts#L10\nconst $b350468427cf28cf$var$SKEW_WINDOW = 300000;\n/**\n * Checks if the provided date is within the skew window of 5 minutes.\n *\n * @param clockTimeInMilliseconds Time to check for skew in milliseconds.\n * @param clockOffsetInMilliseconds Offset to check clock against in milliseconds.\n *\n * @returns True if skewed. False otherwise.\n *\n * @internal\n */ const $b350468427cf28cf$export$c162a01d4a03ea6f = (clockTimeInMilliseconds, clockOffsetInMilliseconds)=>Math.abs((0, $dsAqn.getSkewCorrectedDate)(clockOffsetInMilliseconds).getTime() - clockTimeInMilliseconds) >= $b350468427cf28cf$var$SKEW_WINDOW;\n\n});\n\n\n\n\nparcelRegister(\"iURDH\", function(module, exports) {\n\n$parcel$export(module.exports, \"resolveHeaders\", () => $981c4e8ab4e5d02a$export$7dd43af7d8d48b8f);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $981c4e8ab4e5d02a$export$7dd43af7d8d48b8f = (headers, body)=>{\n const normalizedHeaders = {};\n for(const key in headers)normalizedHeaders[key.toLowerCase()] = headers[key];\n if (body) {\n normalizedHeaders[\"content-type\"] = \"application/json; charset=UTF-8\";\n if (body instanceof FormData) /**\n * If body is a FormData we should not allow setting content-type.\n * It's because runtime HTTP handlers(xhr, fetch, undici, node-fetch,\n * etc.) will modify the content-type value when setting multipart\n * boundary.\n */ delete normalizedHeaders[\"content-type\"];\n }\n return normalizedHeaders;\n};\n\n});\n\n\n\n\n\nparcelRegister(\"dOmJe\", function(module, exports) {\n\n$parcel$export(module.exports, \"post\", () => $b170273bda26d274$export$299ba2dee77727e9);\n$parcel$export(module.exports, \"cancel\", () => (parcelRequire(\"cfOsN\")).cancel);\n$parcel$export(module.exports, \"updateRequestToBeCancellable\", () => (parcelRequire(\"cfOsN\")).updateRequestToBeCancellable);\n\nvar $1qbEC = parcelRequire(\"1qbEC\");\n\nvar $cfOsN = parcelRequire(\"cfOsN\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Internal-only REST POST handler to send GraphQL request to given endpoint. By default, it will use IAM to authorize\n * the request. In some auth modes, the IAM auth has to be disabled. Here's how to set up the request auth correctly:\n * * If auth mode is 'iam', you MUST NOT set 'authorization' header and 'x-api-key' header, since it would disable IAM\n * auth. You MUST also set 'input.options.signingServiceInfo' option.\n * * The including 'input.options.signingServiceInfo.service' and 'input.options.signingServiceInfo.region' are\n * optional. If omitted, the signing service and region will be inferred from url.\n * * If auth mode is 'none', you MUST NOT set 'options.signingServiceInfo' option.\n * * If auth mode is 'apiKey', you MUST set 'x-api-key' custom header.\n * * If auth mode is 'oidc' or 'lambda' or 'userPool', you MUST set 'authorization' header.\n *\n * To make the internal post cancellable, you must also call `updateRequestToBeCancellable()` with the promise from\n * internal post call and the abort controller supplied to the internal post call.\n *\n * @internal\n */ const $b170273bda26d274$export$299ba2dee77727e9 = (input)=>{\n return (0, $cfOsN.post)((0, $1qbEC.Amplify), input);\n};\n\n});\nparcelRegister(\"cfOsN\", function(module, exports) {\n\n$parcel$export(module.exports, \"post\", () => $da10f03454fb4394$export$299ba2dee77727e9);\n$parcel$export(module.exports, \"cancel\", () => $da10f03454fb4394$export$70b61ad426ddbe54);\n$parcel$export(module.exports, \"updateRequestToBeCancellable\", () => $da10f03454fb4394$export$6224e208c7f72b42);\n\nvar $hoxjv = parcelRequire(\"hoxjv\");\n\nvar $hj5OQ = parcelRequire(\"hj5OQ\");\n\n\nparcelRequire(\"jaclz\");\nparcelRequire(\"jDIGB\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * This weak map provides functionality to cancel a request given the promise containing the `post` request.\n *\n * 1. For every GraphQL POST request, an abort controller is created and supplied to the request.\n * 2. The promise fulfilled by GraphGL POST request is then mapped to that abort controller.\n * 3. The promise is returned to the external caller.\n * 4. The caller can either wait for the promise to fulfill or call `cancel(promise)` to cancel the request.\n * 5. If `cancel(promise)` is called, then the corresponding abort controller is retrieved from the map below.\n * 6. GraphQL POST request will be rejected with the error message provided during cancel.\n * 7. Caller can check if the error is because of cancelling by calling `isCancelError(error)`.\n */ const $da10f03454fb4394$var$cancelTokenMap = new WeakMap();\n/**\n * @internal\n */ const $da10f03454fb4394$export$299ba2dee77727e9 = (amplify, { url: url, options: options, abortController: abortController })=>{\n const controller = abortController ?? new AbortController();\n const responsePromise = (0, $hj5OQ.createCancellableOperation)(async ()=>{\n const response = (0, $hoxjv.transferHandler)(amplify, {\n url: url,\n method: \"POST\",\n ...options,\n abortSignal: controller.signal\n }, options?.signingServiceInfo);\n return response;\n }, controller);\n const responseWithCleanUp = responsePromise.finally(()=>{\n $da10f03454fb4394$var$cancelTokenMap.delete(responseWithCleanUp);\n });\n return responseWithCleanUp;\n};\n/**\n * Cancels a request given the promise returned by `post`.\n * If the request is already completed, this function does nothing.\n * It MUST be used after `updateRequestToBeCancellable` is called.\n */ const $da10f03454fb4394$export$70b61ad426ddbe54 = (promise, message)=>{\n const controller = $da10f03454fb4394$var$cancelTokenMap.get(promise);\n if (controller) {\n controller.abort(message);\n if (message && controller.signal.reason !== message) // In runtimes where `AbortSignal.reason` is not supported, we track the reason ourselves.\n // @ts-expect-error reason is read-only property.\n controller.signal[\"reason\"] = message;\n return true;\n }\n return false;\n};\n/**\n * MUST be used to make a promise including internal `post` API call cancellable.\n */ const $da10f03454fb4394$export$6224e208c7f72b42 = (promise, controller)=>{\n $da10f03454fb4394$var$cancelTokenMap.set(promise, controller);\n};\n\n});\n\n\nparcelRegister(\"99ZQ7\", function(module, exports) {\n\n$parcel$export(module.exports, \"AWSAppSyncRealTimeProvider\", () => $86064b38d58ca2f6$export$b7b5e6371992068d);\n\nvar $6OiYn = parcelRequire(\"6OiYn\");\n\nvar $fHcz3 = parcelRequire(\"fHcz3\");\n\nvar $gJw02 = parcelRequire(\"gJw02\");\nvar $kwYKv = parcelRequire(\"kwYKv\");\nvar $5RCQ5 = parcelRequire(\"5RCQ5\");\n\nvar $hVfGq = parcelRequire(\"hVfGq\");\n\nvar $5RCQ5 = parcelRequire(\"5RCQ5\");\nvar $7Ar4G = parcelRequire(\"7Ar4G\");\nvar $3jt4M = parcelRequire(\"3jt4M\");\nvar $ijwDq = parcelRequire(\"ijwDq\");\nvar $dj9FS = parcelRequire(\"dj9FS\");\nvar $g2b7y = parcelRequire(\"g2b7y\");\nvar $01Ziv = parcelRequire(\"01Ziv\");\nvar $i62vd = parcelRequire(\"i62vd\");\nvar $1ZViM = parcelRequire(\"1ZViM\");\n\nvar $OwgYH = parcelRequire(\"OwgYH\");\n\nvar $fuDKT = parcelRequire(\"fuDKT\");\n\nvar $7LQNq = parcelRequire(\"7LQNq\");\n\nvar $bDWoz = parcelRequire(\"bDWoz\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $86064b38d58ca2f6$var$logger = new (0, $gJw02.ConsoleLogger)(\"AWSAppSyncRealTimeProvider\");\nconst $86064b38d58ca2f6$var$dispatchApiEvent = (payload)=>{\n (0, $5RCQ5.Hub).dispatch(\"api\", payload, \"PubSub\", (0, $5RCQ5.AMPLIFY_SYMBOL));\n};\nconst $86064b38d58ca2f6$var$standardDomainPattern = /^https:\\/\\/\\w{26}\\.appsync\\-api\\.\\w{2}(?:(?:\\-\\w{2,})+)\\-\\d\\.amazonaws.com(?:\\.cn)?\\/graphql$/i;\nconst $86064b38d58ca2f6$var$customDomainPath = \"/realtime\";\nclass $86064b38d58ca2f6$export$b7b5e6371992068d {\n constructor(options = {}){\n this.socketStatus = (0, $fuDKT.SOCKET_STATUS).CLOSED;\n this.keepAliveTimeout = (0, $fuDKT.DEFAULT_KEEP_ALIVE_TIMEOUT);\n this.subscriptionObserverMap = new Map();\n this.promiseArray = [];\n this.connectionStateMonitor = new (0, $7LQNq.ConnectionStateMonitor)();\n this.reconnectionMonitor = new (0, $bDWoz.ReconnectionMonitor)();\n // Monitor the connection state and pass changes along to Hub\n this.connectionStateMonitorSubscription = this.connectionStateMonitor.connectionStateObservable.subscribe((connectionState)=>{\n $86064b38d58ca2f6$var$dispatchApiEvent({\n event: (0, $fuDKT.CONNECTION_STATE_CHANGE),\n data: {\n provider: this,\n connectionState: connectionState\n },\n message: `Connection state is ${connectionState}`\n });\n this.connectionState = connectionState;\n // Trigger START_RECONNECT when the connection is disrupted\n if (connectionState === (0, $OwgYH.ConnectionState).ConnectionDisrupted) this.reconnectionMonitor.record((0, $bDWoz.ReconnectEvent).START_RECONNECT);\n // Trigger HALT_RECONNECT to halt reconnection attempts when the state is anything other than\n // ConnectionDisrupted or Connecting\n if ([\n (0, $OwgYH.ConnectionState).Connected,\n (0, $OwgYH.ConnectionState).ConnectedPendingDisconnect,\n (0, $OwgYH.ConnectionState).ConnectedPendingKeepAlive,\n (0, $OwgYH.ConnectionState).ConnectedPendingNetwork,\n (0, $OwgYH.ConnectionState).ConnectionDisruptedPendingNetwork,\n (0, $OwgYH.ConnectionState).Disconnected\n ].includes(connectionState)) this.reconnectionMonitor.record((0, $bDWoz.ReconnectEvent).HALT_RECONNECT);\n });\n }\n /**\n * Mark the socket closed and release all active listeners\n */ close() {\n // Mark the socket closed both in status and the connection monitor\n this.socketStatus = (0, $fuDKT.SOCKET_STATUS).CLOSED;\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).CONNECTION_FAILED);\n // Turn off the subscription monitor Hub publishing\n this.connectionStateMonitorSubscription.unsubscribe();\n // Complete all reconnect observers\n this.reconnectionMonitor.close();\n }\n getNewWebSocket(url, protocol) {\n return new WebSocket(url, protocol);\n }\n getProviderName() {\n return \"AWSAppSyncRealTimeProvider\";\n }\n // Check if url matches standard domain pattern\n isCustomDomain(url) {\n return url.match($86064b38d58ca2f6$var$standardDomainPattern) === null;\n }\n subscribe(options, customUserAgentDetails) {\n const { appSyncGraphqlEndpoint: appSyncGraphqlEndpoint, region: region, query: query, variables: variables, authenticationType: authenticationType, additionalHeaders: additionalHeaders, apiKey: apiKey, authToken: authToken, libraryConfigHeaders: libraryConfigHeaders } = options || {};\n return new (0, $6OiYn.Observable)((observer)=>{\n if (!options || !appSyncGraphqlEndpoint) {\n observer.error({\n errors: [\n {\n ...new (0, $fHcz3.GraphQLError)(`Subscribe only available for AWS AppSync endpoint`)\n }\n ]\n });\n observer.complete();\n } else {\n let subscriptionStartActive = false;\n const subscriptionId = (0, $3jt4M.amplifyUuid)();\n const startSubscription = ()=>{\n if (!subscriptionStartActive) {\n subscriptionStartActive = true;\n const startSubscriptionPromise = this._startSubscriptionWithAWSAppSyncRealTime({\n options: {\n query: query,\n variables: variables,\n region: region,\n authenticationType: authenticationType,\n appSyncGraphqlEndpoint: appSyncGraphqlEndpoint,\n additionalHeaders: additionalHeaders,\n apiKey: apiKey,\n authToken: authToken,\n libraryConfigHeaders: libraryConfigHeaders\n },\n observer: observer,\n subscriptionId: subscriptionId,\n customUserAgentDetails: customUserAgentDetails\n }).catch((err)=>{\n $86064b38d58ca2f6$var$logger.debug(`${(0, $OwgYH.CONTROL_MSG).REALTIME_SUBSCRIPTION_INIT_ERROR}: ${err}`);\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).CLOSED);\n });\n startSubscriptionPromise.finally(()=>{\n subscriptionStartActive = false;\n });\n }\n };\n let reconnectSubscription;\n // Add an observable to the reconnection list to manage reconnection for this subscription\n reconnectSubscription = new (0, $6OiYn.Observable)((observer)=>{\n this.reconnectionMonitor.addObserver(observer);\n }).subscribe(()=>{\n startSubscription();\n });\n startSubscription();\n return async ()=>{\n // Cleanup reconnection subscription\n reconnectSubscription?.unsubscribe();\n // Cleanup after unsubscribing or observer.complete was called after _startSubscriptionWithAWSAppSyncRealTime\n try {\n // Waiting that subscription has been connected before trying to unsubscribe\n await this._waitForSubscriptionToBeConnected(subscriptionId);\n const { subscriptionState: subscriptionState } = this.subscriptionObserverMap.get(subscriptionId) || {};\n if (!subscriptionState) // subscription already unsubscribed\n return;\n if (subscriptionState === (0, $fuDKT.SUBSCRIPTION_STATUS).CONNECTED) this._sendUnsubscriptionMessage(subscriptionId);\n else throw new Error(\"Subscription never connected\");\n } catch (err) {\n $86064b38d58ca2f6$var$logger.debug(`Error while unsubscribing ${err}`);\n } finally{\n this._removeSubscriptionObserver(subscriptionId);\n }\n };\n }\n });\n }\n async _startSubscriptionWithAWSAppSyncRealTime({ options: options, observer: observer, subscriptionId: subscriptionId, customUserAgentDetails: customUserAgentDetails }) {\n const { appSyncGraphqlEndpoint: appSyncGraphqlEndpoint, authenticationType: authenticationType, query: query, variables: variables, apiKey: apiKey, region: region, libraryConfigHeaders: libraryConfigHeaders = ()=>({}), additionalHeaders: additionalHeaders = {}, authToken: authToken } = options;\n let additionalCustomHeaders = {};\n if (typeof additionalHeaders === \"function\") {\n const requestOptions = {\n url: appSyncGraphqlEndpoint || \"\",\n queryString: query || \"\"\n };\n additionalCustomHeaders = await additionalHeaders(requestOptions);\n } else additionalCustomHeaders = additionalHeaders;\n // if an authorization header is set, have the explicit authToken take precedence\n if (authToken) additionalCustomHeaders = {\n ...additionalCustomHeaders,\n Authorization: authToken\n };\n const subscriptionState = (0, $fuDKT.SUBSCRIPTION_STATUS).PENDING;\n const data = {\n query: query,\n variables: variables\n };\n // Having a subscription id map will make it simple to forward messages received\n this.subscriptionObserverMap.set(subscriptionId, {\n observer: observer,\n query: query ?? \"\",\n variables: variables ?? {},\n subscriptionState: subscriptionState,\n startAckTimeoutId: undefined\n });\n // Preparing payload for subscription message\n const dataString = JSON.stringify(data);\n const headerObj = {\n ...await this._awsRealTimeHeaderBasedAuth({\n apiKey: apiKey,\n appSyncGraphqlEndpoint: appSyncGraphqlEndpoint,\n authenticationType: authenticationType,\n payload: dataString,\n canonicalUri: \"\",\n region: region,\n additionalCustomHeaders: additionalCustomHeaders\n }),\n ...await libraryConfigHeaders(),\n ...additionalCustomHeaders,\n [(0, $1ZViM.USER_AGENT_HEADER)]: (0, $dj9FS.getAmplifyUserAgent)(customUserAgentDetails)\n };\n const subscriptionMessage = {\n id: subscriptionId,\n payload: {\n data: dataString,\n extensions: {\n authorization: {\n ...headerObj\n }\n }\n },\n type: (0, $fuDKT.MESSAGE_TYPES).GQL_START\n };\n const stringToAWSRealTime = JSON.stringify(subscriptionMessage);\n try {\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).OPENING_CONNECTION);\n await this._initializeWebSocketConnection({\n apiKey: apiKey,\n appSyncGraphqlEndpoint: appSyncGraphqlEndpoint,\n authenticationType: authenticationType,\n region: region,\n additionalCustomHeaders: additionalCustomHeaders\n });\n } catch (err) {\n this._logStartSubscriptionError(subscriptionId, observer, err);\n return;\n }\n // Potential race condition can occur when unsubscribe is called during _initializeWebSocketConnection.\n // E.g.unsubscribe gets invoked prior to finishing WebSocket handshake or START_ACK.\n // Both subscriptionFailedCallback and subscriptionReadyCallback are used to synchronized this.\n const { subscriptionFailedCallback: subscriptionFailedCallback, subscriptionReadyCallback: subscriptionReadyCallback } = this.subscriptionObserverMap.get(subscriptionId) ?? {};\n // This must be done before sending the message in order to be listening immediately\n this.subscriptionObserverMap.set(subscriptionId, {\n observer: observer,\n subscriptionState: subscriptionState,\n query: query ?? \"\",\n variables: variables ?? {},\n subscriptionReadyCallback: subscriptionReadyCallback,\n subscriptionFailedCallback: subscriptionFailedCallback,\n startAckTimeoutId: setTimeout(()=>{\n this._timeoutStartSubscriptionAck.call(this, subscriptionId);\n }, (0, $fuDKT.START_ACK_TIMEOUT))\n });\n if (this.awsRealTimeSocket) this.awsRealTimeSocket.send(stringToAWSRealTime);\n }\n // Log logic for start subscription failures\n _logStartSubscriptionError(subscriptionId, observer, err) {\n $86064b38d58ca2f6$var$logger.debug({\n err: err\n });\n const message = String(err.message ?? \"\");\n // Resolving to give the state observer time to propogate the update\n Promise.resolve(this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).CLOSED));\n // Capture the error only when the network didn't cause disruption\n if (this.connectionState !== (0, $OwgYH.ConnectionState).ConnectionDisruptedPendingNetwork) {\n // When the error is non-retriable, error out the observable\n if ((0, $g2b7y.isNonRetryableError)(err)) observer.error({\n errors: [\n {\n ...new (0, $fHcz3.GraphQLError)(`${(0, $OwgYH.CONTROL_MSG).CONNECTION_FAILED}: ${message}`)\n }\n ]\n });\n else $86064b38d58ca2f6$var$logger.debug(`${(0, $OwgYH.CONTROL_MSG).CONNECTION_FAILED}: ${message}`);\n const { subscriptionFailedCallback: subscriptionFailedCallback } = this.subscriptionObserverMap.get(subscriptionId) || {};\n // Notify concurrent unsubscription\n if (typeof subscriptionFailedCallback === \"function\") subscriptionFailedCallback();\n }\n }\n // Waiting that subscription has been connected before trying to unsubscribe\n async _waitForSubscriptionToBeConnected(subscriptionId) {\n const subscriptionObserver = this.subscriptionObserverMap.get(subscriptionId);\n if (subscriptionObserver) {\n const { subscriptionState: subscriptionState } = subscriptionObserver;\n // This in case unsubscribe is invoked before sending start subscription message\n if (subscriptionState === (0, $fuDKT.SUBSCRIPTION_STATUS).PENDING) return new Promise((res, rej)=>{\n const { observer: observer, subscriptionState: subscriptionState, variables: variables, query: query } = subscriptionObserver;\n this.subscriptionObserverMap.set(subscriptionId, {\n observer: observer,\n subscriptionState: subscriptionState,\n variables: variables,\n query: query,\n subscriptionReadyCallback: res,\n subscriptionFailedCallback: rej\n });\n });\n }\n }\n _sendUnsubscriptionMessage(subscriptionId) {\n try {\n if (this.awsRealTimeSocket && this.awsRealTimeSocket.readyState === WebSocket.OPEN && this.socketStatus === (0, $fuDKT.SOCKET_STATUS).READY) {\n // Preparing unsubscribe message to stop receiving messages for that subscription\n const unsubscribeMessage = {\n id: subscriptionId,\n type: (0, $fuDKT.MESSAGE_TYPES).GQL_STOP\n };\n const stringToAWSRealTime = JSON.stringify(unsubscribeMessage);\n this.awsRealTimeSocket.send(stringToAWSRealTime);\n }\n } catch (err) {\n // If GQL_STOP is not sent because of disconnection issue, then there is nothing the client can do\n $86064b38d58ca2f6$var$logger.debug({\n err: err\n });\n }\n }\n _removeSubscriptionObserver(subscriptionId) {\n this.subscriptionObserverMap.delete(subscriptionId);\n // Verifying 1000ms after removing subscription in case there are new subscription unmount/mount\n setTimeout(this._closeSocketIfRequired.bind(this), 1000);\n }\n _closeSocketIfRequired() {\n if (this.subscriptionObserverMap.size > 0) // Active subscriptions on the WebSocket\n return;\n if (!this.awsRealTimeSocket) {\n this.socketStatus = (0, $fuDKT.SOCKET_STATUS).CLOSED;\n return;\n }\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).CLOSING_CONNECTION);\n if (this.awsRealTimeSocket.bufferedAmount > 0) // Still data on the WebSocket\n setTimeout(this._closeSocketIfRequired.bind(this), 1000);\n else {\n $86064b38d58ca2f6$var$logger.debug(\"closing WebSocket...\");\n if (this.keepAliveTimeoutId) clearTimeout(this.keepAliveTimeoutId);\n if (this.keepAliveAlertTimeoutId) clearTimeout(this.keepAliveAlertTimeoutId);\n const tempSocket = this.awsRealTimeSocket;\n // Cleaning callbacks to avoid race condition, socket still exists\n tempSocket.onclose = null;\n tempSocket.onerror = null;\n tempSocket.close(1000);\n this.awsRealTimeSocket = undefined;\n this.socketStatus = (0, $fuDKT.SOCKET_STATUS).CLOSED;\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).CLOSED);\n }\n }\n _handleIncomingSubscriptionMessage(message) {\n if (typeof message.data !== \"string\") return;\n $86064b38d58ca2f6$var$logger.debug(`subscription message from AWS AppSync RealTime: ${message.data}`);\n const { id: id = \"\", payload: payload, type: type } = JSON.parse(String(message.data));\n const { observer: observer = null, query: query = \"\", variables: variables = {}, startAckTimeoutId: startAckTimeoutId, subscriptionReadyCallback: subscriptionReadyCallback, subscriptionFailedCallback: subscriptionFailedCallback } = this.subscriptionObserverMap.get(id) || {};\n $86064b38d58ca2f6$var$logger.debug({\n id: id,\n observer: observer,\n query: query,\n variables: variables\n });\n if (type === (0, $fuDKT.MESSAGE_TYPES).GQL_DATA && payload && payload.data) {\n if (observer) observer.next(payload);\n else $86064b38d58ca2f6$var$logger.debug(`observer not found for id: ${id}`);\n return;\n }\n if (type === (0, $fuDKT.MESSAGE_TYPES).GQL_START_ACK) {\n $86064b38d58ca2f6$var$logger.debug(`subscription ready for ${JSON.stringify({\n query: query,\n variables: variables\n })}`);\n if (typeof subscriptionReadyCallback === \"function\") subscriptionReadyCallback();\n if (startAckTimeoutId) clearTimeout(startAckTimeoutId);\n $86064b38d58ca2f6$var$dispatchApiEvent({\n event: (0, $OwgYH.CONTROL_MSG).SUBSCRIPTION_ACK,\n data: {\n query: query,\n variables: variables\n },\n message: \"Connection established for subscription\"\n });\n const subscriptionState = (0, $fuDKT.SUBSCRIPTION_STATUS).CONNECTED;\n if (observer) this.subscriptionObserverMap.set(id, {\n observer: observer,\n query: query,\n variables: variables,\n startAckTimeoutId: undefined,\n subscriptionState: subscriptionState,\n subscriptionReadyCallback: subscriptionReadyCallback,\n subscriptionFailedCallback: subscriptionFailedCallback\n });\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).CONNECTION_ESTABLISHED);\n return;\n }\n if (type === (0, $fuDKT.MESSAGE_TYPES).GQL_CONNECTION_KEEP_ALIVE) {\n if (this.keepAliveTimeoutId) clearTimeout(this.keepAliveTimeoutId);\n if (this.keepAliveAlertTimeoutId) clearTimeout(this.keepAliveAlertTimeoutId);\n this.keepAliveTimeoutId = setTimeout(()=>this._errorDisconnect((0, $OwgYH.CONTROL_MSG).TIMEOUT_DISCONNECT), this.keepAliveTimeout);\n this.keepAliveAlertTimeoutId = setTimeout(()=>{\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).KEEP_ALIVE_MISSED);\n }, (0, $fuDKT.DEFAULT_KEEP_ALIVE_ALERT_TIMEOUT));\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).KEEP_ALIVE);\n return;\n }\n if (type === (0, $fuDKT.MESSAGE_TYPES).GQL_ERROR) {\n const subscriptionState = (0, $fuDKT.SUBSCRIPTION_STATUS).FAILED;\n if (observer) {\n this.subscriptionObserverMap.set(id, {\n observer: observer,\n query: query,\n variables: variables,\n startAckTimeoutId: startAckTimeoutId,\n subscriptionReadyCallback: subscriptionReadyCallback,\n subscriptionFailedCallback: subscriptionFailedCallback,\n subscriptionState: subscriptionState\n });\n $86064b38d58ca2f6$var$logger.debug(`${(0, $OwgYH.CONTROL_MSG).CONNECTION_FAILED}: ${JSON.stringify(payload)}`);\n observer.error({\n errors: [\n {\n ...new (0, $fHcz3.GraphQLError)(`${(0, $OwgYH.CONTROL_MSG).CONNECTION_FAILED}: ${JSON.stringify(payload)}`)\n }\n ]\n });\n if (startAckTimeoutId) clearTimeout(startAckTimeoutId);\n if (typeof subscriptionFailedCallback === \"function\") subscriptionFailedCallback();\n }\n }\n }\n _errorDisconnect(msg) {\n $86064b38d58ca2f6$var$logger.debug(`Disconnect error: ${msg}`);\n if (this.awsRealTimeSocket) {\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).CLOSED);\n this.awsRealTimeSocket.close();\n }\n this.socketStatus = (0, $fuDKT.SOCKET_STATUS).CLOSED;\n }\n _timeoutStartSubscriptionAck(subscriptionId) {\n const subscriptionObserver = this.subscriptionObserverMap.get(subscriptionId);\n if (subscriptionObserver) {\n const { observer: observer, query: query, variables: variables } = subscriptionObserver;\n if (!observer) return;\n this.subscriptionObserverMap.set(subscriptionId, {\n observer: observer,\n query: query,\n variables: variables,\n subscriptionState: (0, $fuDKT.SUBSCRIPTION_STATUS).FAILED\n });\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).CLOSED);\n $86064b38d58ca2f6$var$logger.debug(\"timeoutStartSubscription\", JSON.stringify({\n query: query,\n variables: variables\n }));\n }\n }\n _initializeWebSocketConnection({ appSyncGraphqlEndpoint: appSyncGraphqlEndpoint, authenticationType: authenticationType, apiKey: apiKey, region: region, additionalCustomHeaders: additionalCustomHeaders }) {\n if (this.socketStatus === (0, $fuDKT.SOCKET_STATUS).READY) return;\n return new Promise(async (res, rej)=>{\n this.promiseArray.push({\n res: res,\n rej: rej\n });\n if (this.socketStatus === (0, $fuDKT.SOCKET_STATUS).CLOSED) try {\n this.socketStatus = (0, $fuDKT.SOCKET_STATUS).CONNECTING;\n const payloadString = \"{}\";\n const authHeader = await this._awsRealTimeHeaderBasedAuth({\n authenticationType: authenticationType,\n payload: payloadString,\n canonicalUri: \"/connect\",\n apiKey: apiKey,\n appSyncGraphqlEndpoint: appSyncGraphqlEndpoint,\n region: region,\n additionalCustomHeaders: additionalCustomHeaders\n });\n const headerString = authHeader ? JSON.stringify(authHeader) : \"\";\n const headerQs = (0, $ijwDq.base64Encoder).convert(headerString);\n const payloadQs = (0, $ijwDq.base64Encoder).convert(payloadString);\n let discoverableEndpoint = appSyncGraphqlEndpoint ?? \"\";\n if (this.isCustomDomain(discoverableEndpoint)) discoverableEndpoint = discoverableEndpoint.concat($86064b38d58ca2f6$var$customDomainPath);\n else discoverableEndpoint = discoverableEndpoint.replace(\"appsync-api\", \"appsync-realtime-api\").replace(\"gogi-beta\", \"grt-beta\");\n // Creating websocket url with required query strings\n const protocol = \"wss://\";\n discoverableEndpoint = discoverableEndpoint.replace(\"https://\", protocol).replace(\"http://\", protocol);\n const awsRealTimeUrl = `${discoverableEndpoint}?header=${headerQs}&payload=${payloadQs}`;\n await this._initializeRetryableHandshake(awsRealTimeUrl);\n this.promiseArray.forEach(({ res: res })=>{\n $86064b38d58ca2f6$var$logger.debug(\"Notifying connection successful\");\n res();\n });\n this.socketStatus = (0, $fuDKT.SOCKET_STATUS).READY;\n this.promiseArray = [];\n } catch (err) {\n $86064b38d58ca2f6$var$logger.debug(\"Connection exited with\", err);\n this.promiseArray.forEach(({ rej: rej })=>rej(err));\n this.promiseArray = [];\n if (this.awsRealTimeSocket && this.awsRealTimeSocket.readyState === WebSocket.OPEN) this.awsRealTimeSocket.close(3001);\n this.awsRealTimeSocket = undefined;\n this.socketStatus = (0, $fuDKT.SOCKET_STATUS).CLOSED;\n }\n });\n }\n async _initializeRetryableHandshake(awsRealTimeUrl) {\n $86064b38d58ca2f6$var$logger.debug(`Initializaling retryable Handshake`);\n await (0, $01Ziv.jitteredExponentialRetry)(this._initializeHandshake.bind(this), [\n awsRealTimeUrl\n ], (0, $fuDKT.MAX_DELAY_MS));\n }\n async _initializeHandshake(awsRealTimeUrl) {\n $86064b38d58ca2f6$var$logger.debug(`Initializing handshake ${awsRealTimeUrl}`);\n // Because connecting the socket is async, is waiting until connection is open\n // Step 1: connect websocket\n try {\n await (()=>{\n return new Promise((res, rej)=>{\n const newSocket = this.getNewWebSocket(awsRealTimeUrl, \"graphql-ws\");\n newSocket.onerror = ()=>{\n $86064b38d58ca2f6$var$logger.debug(`WebSocket connection error`);\n };\n newSocket.onclose = ()=>{\n rej(new Error(\"Connection handshake error\"));\n };\n newSocket.onopen = ()=>{\n this.awsRealTimeSocket = newSocket;\n return res();\n };\n });\n })();\n // Step 2: wait for ack from AWS AppSyncReaTime after sending init\n await (()=>{\n return new Promise((res, rej)=>{\n if (this.awsRealTimeSocket) {\n let ackOk = false;\n this.awsRealTimeSocket.onerror = (error)=>{\n $86064b38d58ca2f6$var$logger.debug(`WebSocket error ${JSON.stringify(error)}`);\n };\n this.awsRealTimeSocket.onclose = (event)=>{\n $86064b38d58ca2f6$var$logger.debug(`WebSocket closed ${event.reason}`);\n rej(new Error(JSON.stringify(event)));\n };\n this.awsRealTimeSocket.onmessage = (message)=>{\n if (typeof message.data !== \"string\") return;\n $86064b38d58ca2f6$var$logger.debug(`subscription message from AWS AppSyncRealTime: ${message.data} `);\n const data = JSON.parse(message.data);\n const { type: type, payload: { connectionTimeoutMs: connectionTimeoutMs = (0, $fuDKT.DEFAULT_KEEP_ALIVE_TIMEOUT) } = {} } = data;\n if (type === (0, $fuDKT.MESSAGE_TYPES).GQL_CONNECTION_ACK) {\n ackOk = true;\n if (this.awsRealTimeSocket) {\n this.keepAliveTimeout = connectionTimeoutMs;\n this.awsRealTimeSocket.onmessage = this._handleIncomingSubscriptionMessage.bind(this);\n this.awsRealTimeSocket.onerror = (err)=>{\n $86064b38d58ca2f6$var$logger.debug(err);\n this._errorDisconnect((0, $OwgYH.CONTROL_MSG).CONNECTION_CLOSED);\n };\n this.awsRealTimeSocket.onclose = (event)=>{\n $86064b38d58ca2f6$var$logger.debug(`WebSocket closed ${event.reason}`);\n this._errorDisconnect((0, $OwgYH.CONTROL_MSG).CONNECTION_CLOSED);\n };\n }\n res(\"Cool, connected to AWS AppSyncRealTime\");\n return;\n }\n if (type === (0, $fuDKT.MESSAGE_TYPES).GQL_CONNECTION_ERROR) {\n const { payload: { errors: [{ errorType: errorType = \"\", errorCode: errorCode = 0 } = {}] = [] } = {} } = data;\n rej({\n errorType: errorType,\n errorCode: errorCode\n });\n }\n };\n const gqlInit = {\n type: (0, $fuDKT.MESSAGE_TYPES).GQL_CONNECTION_INIT\n };\n this.awsRealTimeSocket.send(JSON.stringify(gqlInit));\n const checkAckOk = (ackOk)=>{\n if (!ackOk) {\n this.connectionStateMonitor.record((0, $7LQNq.CONNECTION_CHANGE).CONNECTION_FAILED);\n rej(new Error(`Connection timeout: ack from AWSAppSyncRealTime was not received after ${(0, $fuDKT.CONNECTION_INIT_TIMEOUT)} ms`));\n }\n };\n setTimeout(()=>checkAckOk(ackOk), (0, $fuDKT.CONNECTION_INIT_TIMEOUT));\n }\n });\n })();\n } catch (err) {\n const { errorType: errorType, errorCode: errorCode } = err;\n if ((0, $fuDKT.NON_RETRYABLE_CODES).includes(errorCode)) throw new (0, $i62vd.NonRetryableError)(errorType);\n else if (errorType) throw new Error(errorType);\n else throw err;\n }\n }\n async _awsRealTimeHeaderBasedAuth({ apiKey: apiKey, authenticationType: authenticationType, payload: payload, canonicalUri: canonicalUri, appSyncGraphqlEndpoint: appSyncGraphqlEndpoint, region: region, additionalCustomHeaders: additionalCustomHeaders }) {\n const headerHandler = {\n apiKey: this._awsRealTimeApiKeyHeader.bind(this),\n iam: this._awsRealTimeIAMHeader.bind(this),\n oidc: this._awsAuthTokenHeader.bind(this),\n userPool: this._awsAuthTokenHeader.bind(this),\n lambda: this._customAuthHeader,\n none: this._customAuthHeader\n };\n if (!authenticationType || !headerHandler[authenticationType]) {\n $86064b38d58ca2f6$var$logger.debug(`Authentication type ${authenticationType} not supported`);\n return undefined;\n } else {\n const handler = headerHandler[authenticationType];\n const host = appSyncGraphqlEndpoint ? new (0, $7Ar4G.AmplifyUrl)(appSyncGraphqlEndpoint).host : undefined;\n $86064b38d58ca2f6$var$logger.debug(`Authenticating with ${JSON.stringify(authenticationType)}`);\n let resolvedApiKey;\n if (authenticationType === \"apiKey\") resolvedApiKey = apiKey;\n const result = await handler({\n payload: payload,\n canonicalUri: canonicalUri,\n appSyncGraphqlEndpoint: appSyncGraphqlEndpoint,\n apiKey: resolvedApiKey,\n region: region,\n host: host,\n additionalCustomHeaders: additionalCustomHeaders\n });\n return result;\n }\n }\n async _awsAuthTokenHeader({ host: host }) {\n const session = await (0, $kwYKv.fetchAuthSession)();\n return {\n Authorization: session?.tokens?.accessToken?.toString(),\n host: host\n };\n }\n async _awsRealTimeApiKeyHeader({ apiKey: apiKey, host: host }) {\n const dt = new Date();\n const dtStr = dt.toISOString().replace(/[:\\-]|\\.\\d{3}/g, \"\");\n return {\n host: host,\n \"x-amz-date\": dtStr,\n \"x-api-key\": apiKey\n };\n }\n async _awsRealTimeIAMHeader({ payload: payload, canonicalUri: canonicalUri, appSyncGraphqlEndpoint: appSyncGraphqlEndpoint, region: region }) {\n const endpointInfo = {\n region: region,\n service: \"appsync\"\n };\n const creds = (await (0, $kwYKv.fetchAuthSession)()).credentials;\n const request = {\n url: `${appSyncGraphqlEndpoint}${canonicalUri}`,\n data: payload,\n method: \"POST\",\n headers: {\n ...(0, $fuDKT.AWS_APPSYNC_REALTIME_HEADERS)\n }\n };\n const signed_params = (0, $hVfGq.signRequest)({\n headers: request.headers,\n method: request.method,\n url: new (0, $7Ar4G.AmplifyUrl)(request.url),\n body: request.data\n }, {\n // TODO: What do we need to do to remove these !'s?\n credentials: creds,\n signingRegion: endpointInfo.region,\n signingService: endpointInfo.service\n });\n return signed_params.headers;\n }\n _customAuthHeader({ host: host, additionalCustomHeaders: additionalCustomHeaders }) {\n /**\n * If `additionalHeaders` was provided to the subscription as a function,\n * the headers that are returned by that function will already have been\n * provided before this function is called.\n */ if (!additionalCustomHeaders?.[\"Authorization\"]) throw new Error(\"No auth token specified\");\n return {\n Authorization: additionalCustomHeaders.Authorization,\n host: host\n };\n }\n}\n\n});\nparcelRegister(\"kwYKv\", function(module, exports) {\n\n$parcel$export(module.exports, \"fetchAuthSession\", () => $83614fd30266723c$export$39430dfe49142ae);\n\nvar $eL2i9 = parcelRequire(\"eL2i9\");\n\nvar $1qbEC = parcelRequire(\"1qbEC\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $83614fd30266723c$export$39430dfe49142ae = (options)=>{\n return (0, $eL2i9.fetchAuthSession)((0, $1qbEC.Amplify), options);\n};\n\n});\nparcelRegister(\"eL2i9\", function(module, exports) {\n\n$parcel$export(module.exports, \"fetchAuthSession\", () => $bb56c3c3b8aca32b$export$39430dfe49142ae);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $bb56c3c3b8aca32b$export$39430dfe49142ae = (amplify, options)=>{\n return amplify.Auth.fetchAuthSession(options);\n};\n\n});\n\n\nparcelRegister(\"3jt4M\", function(module, exports) {\n\n$parcel$export(module.exports, \"amplifyUuid\", () => $1e1861aa821bc2be$export$80bbb53510529a00);\n\nvar $5sKyw = parcelRequire(\"5sKyw\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $1e1861aa821bc2be$export$80bbb53510529a00 = (0, $5sKyw.default);\n\n});\nparcelRegister(\"5sKyw\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $3fa3ae484854b431$export$2e2bcd8739ae039);\n\nvar $aZg8W = parcelRequire(\"aZg8W\");\n\nvar $7qKRb = parcelRequire(\"7qKRb\");\n\nvar $2uohp = parcelRequire(\"2uohp\");\nfunction $3fa3ae484854b431$var$v4(options, buf, offset) {\n if ((0, $aZg8W.default).randomUUID && !buf && !options) return (0, $aZg8W.default).randomUUID();\n options = options || {};\n const rnds = options.random || (options.rng || (0, $7qKRb.default))(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n if (buf) {\n offset = offset || 0;\n for(let i = 0; i < 16; ++i)buf[offset + i] = rnds[i];\n return buf;\n }\n return (0, $2uohp.unsafeStringify)(rnds);\n}\nvar $3fa3ae484854b431$export$2e2bcd8739ae039 = $3fa3ae484854b431$var$v4;\n\n});\nparcelRegister(\"aZg8W\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $7ffc1f94643dc7e4$export$2e2bcd8739ae039);\nconst $7ffc1f94643dc7e4$var$randomUUID = typeof crypto !== \"undefined\" && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nvar $7ffc1f94643dc7e4$export$2e2bcd8739ae039 = {\n randomUUID: $7ffc1f94643dc7e4$var$randomUUID\n};\n\n});\n\nparcelRegister(\"7qKRb\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $568f4ee4022ba00e$export$2e2bcd8739ae039);\n// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nlet $568f4ee4022ba00e$var$getRandomValues;\nconst $568f4ee4022ba00e$var$rnds8 = new Uint8Array(16);\nfunction $568f4ee4022ba00e$export$2e2bcd8739ae039() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!$568f4ee4022ba00e$var$getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation.\n $568f4ee4022ba00e$var$getRandomValues = typeof crypto !== \"undefined\" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);\n if (!$568f4ee4022ba00e$var$getRandomValues) throw new Error(\"crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported\");\n }\n return $568f4ee4022ba00e$var$getRandomValues($568f4ee4022ba00e$var$rnds8);\n}\n\n});\n\nparcelRegister(\"2uohp\", function(module, exports) {\n\n$parcel$export(module.exports, \"unsafeStringify\", () => $1d0137947e8554ce$export$8fb373d660548968);\n\nvar $64ZUg = parcelRequire(\"64ZUg\");\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */ const $1d0137947e8554ce$var$byteToHex = [];\nfor(let i = 0; i < 256; ++i)$1d0137947e8554ce$var$byteToHex.push((i + 0x100).toString(16).slice(1));\nfunction $1d0137947e8554ce$export$8fb373d660548968(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return $1d0137947e8554ce$var$byteToHex[arr[offset + 0]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 1]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 2]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 3]] + \"-\" + $1d0137947e8554ce$var$byteToHex[arr[offset + 4]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 5]] + \"-\" + $1d0137947e8554ce$var$byteToHex[arr[offset + 6]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 7]] + \"-\" + $1d0137947e8554ce$var$byteToHex[arr[offset + 8]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 9]] + \"-\" + $1d0137947e8554ce$var$byteToHex[arr[offset + 10]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 11]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 12]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 13]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 14]] + $1d0137947e8554ce$var$byteToHex[arr[offset + 15]];\n}\nfunction $1d0137947e8554ce$var$stringify(arr, offset = 0) {\n const uuid = $1d0137947e8554ce$export$8fb373d660548968(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n if (!(0, $64ZUg.default)(uuid)) throw TypeError(\"Stringified UUID is invalid\");\n return uuid;\n}\nvar $1d0137947e8554ce$export$2e2bcd8739ae039 = $1d0137947e8554ce$var$stringify;\n\n});\nparcelRegister(\"64ZUg\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $46d323206dcbf256$export$2e2bcd8739ae039);\n\nvar $4meF0 = parcelRequire(\"4meF0\");\nfunction $46d323206dcbf256$var$validate(uuid) {\n return typeof uuid === \"string\" && (0, $4meF0.default).test(uuid);\n}\nvar $46d323206dcbf256$export$2e2bcd8739ae039 = $46d323206dcbf256$var$validate;\n\n});\nparcelRegister(\"4meF0\", function(module, exports) {\n\n$parcel$export(module.exports, \"default\", () => $32c496bfb6c27b56$export$2e2bcd8739ae039);\nvar $32c496bfb6c27b56$export$2e2bcd8739ae039 = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;\n\n});\n\n\n\n\n\nparcelRegister(\"ijwDq\", function(module, exports) {\n\n$parcel$export(module.exports, \"base64Encoder\", () => $a67be9353d05d3e6$export$695b149896bd3e2a);\n\nvar $dfMUF = parcelRequire(\"dfMUF\");\n\nvar $1AT8d = parcelRequire(\"1AT8d\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $a67be9353d05d3e6$export$695b149896bd3e2a = {\n convert (input, { urlSafe: urlSafe } = {\n urlSafe: false\n }) {\n const inputStr = typeof input === \"string\" ? input : (0, $1AT8d.bytesToString)(input);\n const encodedStr = (0, $dfMUF.getBtoa)()(inputStr);\n // see details about the char replacing at https://datatracker.ietf.org/doc/html/rfc4648#section-5\n return urlSafe ? encodedStr.replace(/\\+/g, \"-\").replace(/\\//g, \"_\") : encodedStr;\n }\n};\n\n});\nparcelRegister(\"1AT8d\", function(module, exports) {\n\n$parcel$export(module.exports, \"bytesToString\", () => $2388b4cedba94ebc$export$7c746b75f47c9c7d);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $2388b4cedba94ebc$export$7c746b75f47c9c7d(input) {\n return Array.from(input, (byte)=>String.fromCodePoint(byte)).join(\"\");\n}\n\n});\n\n\nparcelRegister(\"g2b7y\", function(module, exports) {\n\n$parcel$export(module.exports, \"isNonRetryableError\", () => $e8dbabe11e4625cd$export$490cab1f6f83794d);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $e8dbabe11e4625cd$export$490cab1f6f83794d = (obj)=>{\n const key = \"nonRetryable\";\n return obj && obj[key];\n};\n\n});\n\nparcelRegister(\"01Ziv\", function(module, exports) {\n\n$parcel$export(module.exports, \"jitteredExponentialRetry\", () => $dc95ff395620ab33$export$a24aa7705df9cf44);\n\nvar $1Ns4m = parcelRequire(\"1Ns4m\");\n\nvar $h05tY = parcelRequire(\"h05tY\");\n\nvar $1jQno = parcelRequire(\"1jQno\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @private\n * Internal use of Amplify only\n */ const $dc95ff395620ab33$export$a24aa7705df9cf44 = (functionToRetry, args, maxDelayMs = (0, $1Ns4m.MAX_DELAY_MS), onTerminate)=>(0, $1jQno.retry)(functionToRetry, args, (0, $h05tY.jitteredBackoff)(maxDelayMs), onTerminate);\n\n});\nparcelRegister(\"1jQno\", function(module, exports) {\n\n$parcel$export(module.exports, \"retry\", () => $3640de013fea6a9b$export$9369b12211e1fce4);\n\nvar $gJw02 = parcelRequire(\"gJw02\");\n\nvar $g2b7y = parcelRequire(\"g2b7y\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $3640de013fea6a9b$var$logger = new (0, $gJw02.ConsoleLogger)(\"retryUtil\");\n/**\n * @private\n * Internal use of Amplify only\n */ async function $3640de013fea6a9b$export$9369b12211e1fce4(functionToRetry, args, delayFn, onTerminate) {\n if (typeof functionToRetry !== \"function\") throw Error(\"functionToRetry must be a function\");\n return new Promise(async (resolve, reject)=>{\n let attempt = 0;\n let terminated = false;\n let timeout;\n let wakeUp = ()=>{}; // will be replaced with a resolver()\n // used after the loop if terminated while waiting for a timer.\n let lastError;\n onTerminate && onTerminate.then(()=>{\n // signal not to try anymore.\n terminated = true;\n // stop sleeping if we're sleeping.\n clearTimeout(timeout);\n wakeUp();\n });\n while(!terminated){\n attempt++;\n $3640de013fea6a9b$var$logger.debug(`${functionToRetry.name} attempt #${attempt} with this vars: ${JSON.stringify(args)}`);\n try {\n return resolve(await functionToRetry(...args));\n } catch (err) {\n lastError = err;\n $3640de013fea6a9b$var$logger.debug(`error on ${functionToRetry.name}`, err);\n if ((0, $g2b7y.isNonRetryableError)(err)) {\n $3640de013fea6a9b$var$logger.debug(`${functionToRetry.name} non retryable error`, err);\n return reject(err);\n }\n const retryIn = delayFn(attempt, args, err);\n $3640de013fea6a9b$var$logger.debug(`${functionToRetry.name} retrying in ${retryIn} ms`);\n // we check `terminated` again here because it could have flipped\n // in the time it took `functionToRetry` to return.\n if (retryIn === false || terminated) return reject(err);\n else await new Promise((r)=>{\n wakeUp = r; // export wakeUp for onTerminate handling\n timeout = setTimeout(wakeUp, retryIn);\n });\n }\n }\n // reached if terminated while waiting for a timer.\n reject(lastError);\n });\n}\n\n});\n\n\nparcelRegister(\"i62vd\", function(module, exports) {\n\n$parcel$export(module.exports, \"NonRetryableError\", () => $4a5528a46d771b76$export$1e38badc838ad384);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass $4a5528a46d771b76$export$1e38badc838ad384 extends Error {\n constructor(message){\n super(message);\n this.nonRetryable = true;\n }\n}\n\n});\n\nparcelRegister(\"OwgYH\", function(module, exports) {\n\n$parcel$export(module.exports, \"CONTROL_MSG\", () => $e94925d7f6d2ab83$export$f96baa4bc836aea4);\n$parcel$export(module.exports, \"ConnectionState\", () => $e94925d7f6d2ab83$export$cd9c3c6bf535afc9);\nvar $e94925d7f6d2ab83$export$f96baa4bc836aea4;\n(function(CONTROL_MSG) {\n CONTROL_MSG[\"CONNECTION_CLOSED\"] = \"Connection closed\";\n CONTROL_MSG[\"CONNECTION_FAILED\"] = \"Connection failed\";\n CONTROL_MSG[\"REALTIME_SUBSCRIPTION_INIT_ERROR\"] = \"AppSync Realtime subscription init error\";\n CONTROL_MSG[\"SUBSCRIPTION_ACK\"] = \"Subscription ack\";\n CONTROL_MSG[\"TIMEOUT_DISCONNECT\"] = \"Timeout disconnect\";\n})($e94925d7f6d2ab83$export$f96baa4bc836aea4 || ($e94925d7f6d2ab83$export$f96baa4bc836aea4 = {}));\n/** @enum {string} */ var $e94925d7f6d2ab83$export$cd9c3c6bf535afc9;\n(function(ConnectionState) {\n /*\n * The connection is alive and healthy\n */ ConnectionState[\"Connected\"] = \"Connected\";\n /*\n * The connection is alive, but the connection is offline\n */ ConnectionState[\"ConnectedPendingNetwork\"] = \"ConnectedPendingNetwork\";\n /*\n * The connection has been disconnected while in use\n */ ConnectionState[\"ConnectionDisrupted\"] = \"ConnectionDisrupted\";\n /*\n * The connection has been disconnected and the network is offline\n */ ConnectionState[\"ConnectionDisruptedPendingNetwork\"] = \"ConnectionDisruptedPendingNetwork\";\n /*\n * The connection is in the process of connecting\n */ ConnectionState[\"Connecting\"] = \"Connecting\";\n /*\n * The connection is not in use and is being disconnected\n */ ConnectionState[\"ConnectedPendingDisconnect\"] = \"ConnectedPendingDisconnect\";\n /*\n * The connection is not in use and has been disconnected\n */ ConnectionState[\"Disconnected\"] = \"Disconnected\";\n /*\n * The connection is alive, but a keep alive message has been missed\n */ ConnectionState[\"ConnectedPendingKeepAlive\"] = \"ConnectedPendingKeepAlive\";\n})($e94925d7f6d2ab83$export$cd9c3c6bf535afc9 || ($e94925d7f6d2ab83$export$cd9c3c6bf535afc9 = {}));\n\n});\n\nparcelRegister(\"fuDKT\", function(module, exports) {\n\n$parcel$export(module.exports, \"MAX_DELAY_MS\", () => $cc2a59cca225035e$export$76041b1400befb8b);\n$parcel$export(module.exports, \"NON_RETRYABLE_CODES\", () => $cc2a59cca225035e$export$d0eacfe8369b1f8e);\n$parcel$export(module.exports, \"CONNECTION_STATE_CHANGE\", () => $cc2a59cca225035e$export$a222eb271a4ce46b);\n$parcel$export(module.exports, \"MESSAGE_TYPES\", () => $cc2a59cca225035e$export$e5fcfdba4a8ae715);\n$parcel$export(module.exports, \"SUBSCRIPTION_STATUS\", () => $cc2a59cca225035e$export$50fc1b1dccfe0f97);\n$parcel$export(module.exports, \"SOCKET_STATUS\", () => $cc2a59cca225035e$export$453843f36861c0a2);\n$parcel$export(module.exports, \"AWS_APPSYNC_REALTIME_HEADERS\", () => $cc2a59cca225035e$export$7a236fa930e45f72);\n$parcel$export(module.exports, \"CONNECTION_INIT_TIMEOUT\", () => $cc2a59cca225035e$export$c36bbd48cffe7fa4);\n$parcel$export(module.exports, \"START_ACK_TIMEOUT\", () => $cc2a59cca225035e$export$c6bc4b7cffb2ca8);\n$parcel$export(module.exports, \"DEFAULT_KEEP_ALIVE_TIMEOUT\", () => $cc2a59cca225035e$export$71a299b29e2098f0);\n$parcel$export(module.exports, \"DEFAULT_KEEP_ALIVE_ALERT_TIMEOUT\", () => $cc2a59cca225035e$export$2cb64c85846dde7d);\n$parcel$export(module.exports, \"RECONNECT_DELAY\", () => $cc2a59cca225035e$export$6040e6f953ecf619);\n$parcel$export(module.exports, \"RECONNECT_INTERVAL\", () => $cc2a59cca225035e$export$6229bdb3fed88d41);\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $cc2a59cca225035e$export$76041b1400befb8b = 5000;\nconst $cc2a59cca225035e$export$d0eacfe8369b1f8e = [\n 400,\n 401,\n 403\n];\nconst $cc2a59cca225035e$export$a222eb271a4ce46b = \"ConnectionStateChange\";\nvar $cc2a59cca225035e$export$e5fcfdba4a8ae715;\n(function(MESSAGE_TYPES) {\n /**\n * Client -> Server message.\n * This message type is the first message after handshake and this will initialize AWS AppSync RealTime communication\n */ MESSAGE_TYPES[\"GQL_CONNECTION_INIT\"] = \"connection_init\";\n /**\n * Server -> Client message\n * This message type is in case there is an issue with AWS AppSync RealTime when establishing connection\n */ MESSAGE_TYPES[\"GQL_CONNECTION_ERROR\"] = \"connection_error\";\n /**\n * Server -> Client message.\n * This message type is for the ack response from AWS AppSync RealTime for GQL_CONNECTION_INIT message\n */ MESSAGE_TYPES[\"GQL_CONNECTION_ACK\"] = \"connection_ack\";\n /**\n * Client -> Server message.\n * This message type is for register subscriptions with AWS AppSync RealTime\n */ MESSAGE_TYPES[\"GQL_START\"] = \"start\";\n /**\n * Server -> Client message.\n * This message type is for the ack response from AWS AppSync RealTime for GQL_START message\n */ MESSAGE_TYPES[\"GQL_START_ACK\"] = \"start_ack\";\n /**\n * Server -> Client message.\n * This message type is for subscription message from AWS AppSync RealTime\n */ MESSAGE_TYPES[\"GQL_DATA\"] = \"data\";\n /**\n * Server -> Client message.\n * This message type helps the client to know is still receiving messages from AWS AppSync RealTime\n */ MESSAGE_TYPES[\"GQL_CONNECTION_KEEP_ALIVE\"] = \"ka\";\n /**\n * Client -> Server message.\n * This message type is for unregister subscriptions with AWS AppSync RealTime\n */ MESSAGE_TYPES[\"GQL_STOP\"] = \"stop\";\n /**\n * Server -> Client message.\n * This message type is for the ack response from AWS AppSync RealTime for GQL_STOP message\n */ MESSAGE_TYPES[\"GQL_COMPLETE\"] = \"complete\";\n /**\n * Server -> Client message.\n * This message type is for sending error messages from AWS AppSync RealTime to the client\n */ MESSAGE_TYPES[\"GQL_ERROR\"] = \"error\";\n})($cc2a59cca225035e$export$e5fcfdba4a8ae715 || ($cc2a59cca225035e$export$e5fcfdba4a8ae715 = {}));\nvar $cc2a59cca225035e$export$50fc1b1dccfe0f97;\n(function(SUBSCRIPTION_STATUS) {\n SUBSCRIPTION_STATUS[SUBSCRIPTION_STATUS[\"PENDING\"] = 0] = \"PENDING\";\n SUBSCRIPTION_STATUS[SUBSCRIPTION_STATUS[\"CONNECTED\"] = 1] = \"CONNECTED\";\n SUBSCRIPTION_STATUS[SUBSCRIPTION_STATUS[\"FAILED\"] = 2] = \"FAILED\";\n})($cc2a59cca225035e$export$50fc1b1dccfe0f97 || ($cc2a59cca225035e$export$50fc1b1dccfe0f97 = {}));\nvar $cc2a59cca225035e$export$453843f36861c0a2;\n(function(SOCKET_STATUS) {\n SOCKET_STATUS[SOCKET_STATUS[\"CLOSED\"] = 0] = \"CLOSED\";\n SOCKET_STATUS[SOCKET_STATUS[\"READY\"] = 1] = \"READY\";\n SOCKET_STATUS[SOCKET_STATUS[\"CONNECTING\"] = 2] = \"CONNECTING\";\n})($cc2a59cca225035e$export$453843f36861c0a2 || ($cc2a59cca225035e$export$453843f36861c0a2 = {}));\nconst $cc2a59cca225035e$export$7a236fa930e45f72 = {\n accept: \"application/json, text/javascript\",\n \"content-encoding\": \"amz-1.0\",\n \"content-type\": \"application/json; charset=UTF-8\"\n};\n/**\n * Time in milleseconds to wait for GQL_CONNECTION_INIT message\n */ const $cc2a59cca225035e$export$c36bbd48cffe7fa4 = 15000;\n/**\n * Time in milleseconds to wait for GQL_START_ACK message\n */ const $cc2a59cca225035e$export$c6bc4b7cffb2ca8 = 15000;\n/**\n * Default Time in milleseconds to wait for GQL_CONNECTION_KEEP_ALIVE message\n */ const $cc2a59cca225035e$export$71a299b29e2098f0 = 300000;\n/**\n * Default Time in milleseconds to alert for missed GQL_CONNECTION_KEEP_ALIVE message\n */ const $cc2a59cca225035e$export$2cb64c85846dde7d = 65000;\n/**\n * Default delay time in milleseconds between when reconnect is triggered vs when it is attempted\n */ const $cc2a59cca225035e$export$6040e6f953ecf619 = 5000;\n/**\n * Default interval time in milleseconds between when reconnect is re-attempted\n */ const $cc2a59cca225035e$export$6229bdb3fed88d41 = 60000;\n\n});\n\nparcelRegister(\"7LQNq\", function(module, exports) {\n\n$parcel$export(module.exports, \"CONNECTION_CHANGE\", () => $69f8b000bf003237$export$77ad93647ea34124);\n$parcel$export(module.exports, \"ConnectionStateMonitor\", () => $69f8b000bf003237$export$d8916ed266c478dd);\n\nvar $d6DLj = parcelRequire(\"d6DLj\");\nvar $d4PzE = parcelRequire(\"d4PzE\");\nvar $6OiYn = parcelRequire(\"6OiYn\");\n\nvar $OwgYH = parcelRequire(\"OwgYH\");\n\nvar $3cx2X = parcelRequire(\"3cx2X\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $69f8b000bf003237$export$77ad93647ea34124 = {\n KEEP_ALIVE_MISSED: {\n keepAliveState: \"unhealthy\"\n },\n KEEP_ALIVE: {\n keepAliveState: \"healthy\"\n },\n CONNECTION_ESTABLISHED: {\n connectionState: \"connected\"\n },\n CONNECTION_FAILED: {\n intendedConnectionState: \"disconnected\",\n connectionState: \"disconnected\"\n },\n CLOSING_CONNECTION: {\n intendedConnectionState: \"disconnected\"\n },\n OPENING_CONNECTION: {\n intendedConnectionState: \"connected\",\n connectionState: \"connecting\"\n },\n CLOSED: {\n connectionState: \"disconnected\"\n },\n ONLINE: {\n networkState: \"connected\"\n },\n OFFLINE: {\n networkState: \"disconnected\"\n }\n};\nclass $69f8b000bf003237$export$d8916ed266c478dd {\n constructor(){\n this._networkMonitoringSubscription = undefined;\n this._linkedConnectionState = {\n networkState: \"connected\",\n connectionState: \"disconnected\",\n intendedConnectionState: \"disconnected\",\n keepAliveState: \"healthy\"\n };\n // Attempt to update the state with the current actual network state\n this._initialNetworkStateSubscription = (0, $3cx2X.ReachabilityMonitor)().subscribe(({ online: online })=>{\n this.record(online ? $69f8b000bf003237$export$77ad93647ea34124.ONLINE : $69f8b000bf003237$export$77ad93647ea34124.OFFLINE);\n this._initialNetworkStateSubscription?.unsubscribe();\n });\n this._linkedConnectionStateObservable = new (0, $6OiYn.Observable)((connectionStateObserver)=>{\n connectionStateObserver.next(this._linkedConnectionState);\n this._linkedConnectionStateObserver = connectionStateObserver;\n });\n }\n /**\n * Turn network state monitoring on if it isn't on already\n */ enableNetworkMonitoring() {\n // If no initial network state was discovered, stop trying\n this._initialNetworkStateSubscription?.unsubscribe();\n // Maintain the network state based on the reachability monitor\n if (this._networkMonitoringSubscription === undefined) this._networkMonitoringSubscription = (0, $3cx2X.ReachabilityMonitor)().subscribe(({ online: online })=>{\n this.record(online ? $69f8b000bf003237$export$77ad93647ea34124.ONLINE : $69f8b000bf003237$export$77ad93647ea34124.OFFLINE);\n });\n }\n /**\n * Turn network state monitoring off if it isn't off already\n */ disableNetworkMonitoring() {\n this._networkMonitoringSubscription?.unsubscribe();\n this._networkMonitoringSubscription = undefined;\n }\n /**\n * Get the observable that allows us to monitor the connection state\n *\n * @returns {Observable} - The observable that emits ConnectionState updates\n */ get connectionStateObservable() {\n let previous;\n // The linked state aggregates state changes to any of the network, connection,\n // intendedConnection and keepAliveHealth. Some states will change these independent\n // states without changing the overall connection state.\n // After translating from linked states to ConnectionState, then remove any duplicates\n return this._linkedConnectionStateObservable.pipe((0, $d4PzE.map)((value)=>{\n return this.connectionStatesTranslator(value);\n })).pipe((0, $d6DLj.filter)((current)=>{\n const toInclude = current !== previous;\n previous = current;\n return toInclude;\n }));\n }\n /*\n * Updates local connection state and emits the full state to the observer.\n */ record(statusUpdates) {\n // Maintain the network monitor\n if (statusUpdates.intendedConnectionState === \"connected\") this.enableNetworkMonitoring();\n else if (statusUpdates.intendedConnectionState === \"disconnected\") this.disableNetworkMonitoring();\n // Maintain the socket state\n const newSocketStatus = {\n ...this._linkedConnectionState,\n ...statusUpdates\n };\n this._linkedConnectionState = {\n ...newSocketStatus\n };\n this._linkedConnectionStateObserver?.next(this._linkedConnectionState);\n }\n /*\n * Translate the ConnectionState structure into a specific ConnectionState string literal union\n */ connectionStatesTranslator({ connectionState: connectionState, networkState: networkState, intendedConnectionState: intendedConnectionState, keepAliveState: keepAliveState }) {\n if (connectionState === \"connected\" && networkState === \"disconnected\") return (0, $OwgYH.ConnectionState).ConnectedPendingNetwork;\n if (connectionState === \"connected\" && intendedConnectionState === \"disconnected\") return (0, $OwgYH.ConnectionState).ConnectedPendingDisconnect;\n if (connectionState === \"disconnected\" && intendedConnectionState === \"connected\" && networkState === \"disconnected\") return (0, $OwgYH.ConnectionState).ConnectionDisruptedPendingNetwork;\n if (connectionState === \"disconnected\" && intendedConnectionState === \"connected\") return (0, $OwgYH.ConnectionState).ConnectionDisrupted;\n if (connectionState === \"connected\" && keepAliveState === \"unhealthy\") return (0, $OwgYH.ConnectionState).ConnectedPendingKeepAlive;\n // All remaining states directly correspond to the connection state\n if (connectionState === \"connecting\") return (0, $OwgYH.ConnectionState).Connecting;\n if (connectionState === \"disconnected\") return (0, $OwgYH.ConnectionState).Disconnected;\n return (0, $OwgYH.ConnectionState).Connected;\n }\n}\n\n});\nparcelRegister(\"d6DLj\", function(module, exports) {\n\n$parcel$export(module.exports, \"filter\", () => $98aaadcfa91e6727$export$3dea766d36a8935f);\n\nvar $d9kQQ = parcelRequire(\"d9kQQ\");\n\nvar $4QgEI = parcelRequire(\"4QgEI\");\nfunction $98aaadcfa91e6727$export$3dea766d36a8935f(predicate, thisArg) {\n return (0, $d9kQQ.operate)(function(source, subscriber) {\n var index = 0;\n source.subscribe((0, $4QgEI.createOperatorSubscriber)(subscriber, function(value) {\n return predicate.call(thisArg, value, index++) && subscriber.next(value);\n }));\n });\n}\n\n});\n\nparcelRegister(\"d4PzE\", function(module, exports) {\n\n$parcel$export(module.exports, \"map\", () => $9853a79d111e4e33$export$871de8747c9eaa88);\n\nvar $d9kQQ = parcelRequire(\"d9kQQ\");\n\nvar $4QgEI = parcelRequire(\"4QgEI\");\nfunction $9853a79d111e4e33$export$871de8747c9eaa88(project, thisArg) {\n return (0, $d9kQQ.operate)(function(source, subscriber) {\n var index = 0;\n source.subscribe((0, $4QgEI.createOperatorSubscriber)(subscriber, function(value) {\n subscriber.next(project.call(thisArg, value, index++));\n }));\n });\n}\n\n});\n\nparcelRegister(\"3cx2X\", function(module, exports) {\n\n$parcel$export(module.exports, \"ReachabilityMonitor\", () => $e84318ed5419b5d0$export$2636160e319be4f9);\n\nvar $apURp = parcelRequire(\"apURp\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $e84318ed5419b5d0$export$2636160e319be4f9 = ()=>new (0, $apURp.Reachability)().networkMonitor();\n\n});\nparcelRegister(\"apURp\", function(module, exports) {\n\n$parcel$export(module.exports, \"Reachability\", () => $c2db73d795074c30$export$ccee288f4c11aa98);\n\nvar $46Tqd = parcelRequire(\"46Tqd\");\nvar $6OiYn = parcelRequire(\"6OiYn\");\n\n\nvar $lt7Sl = parcelRequire(\"lt7Sl\");\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass $c2db73d795074c30$export$ccee288f4c11aa98 {\n networkMonitor(_) {\n const globalObj = (0, $lt7Sl.isWebWorker)() ? self : typeof window !== \"undefined\" && window;\n if (!globalObj) return (0, $46Tqd.from)([\n {\n online: true\n }\n ]);\n return new (0, $6OiYn.Observable)((observer)=>{\n observer.next({\n online: globalObj.navigator.onLine\n });\n const notifyOnline = ()=>observer.next({\n online: true\n });\n const notifyOffline = ()=>observer.next({\n online: false\n });\n globalObj.addEventListener(\"online\", notifyOnline);\n globalObj.addEventListener(\"offline\", notifyOffline);\n $c2db73d795074c30$export$ccee288f4c11aa98._observers.push(observer);\n return ()=>{\n globalObj.removeEventListener(\"online\", notifyOnline);\n globalObj.removeEventListener(\"offline\", notifyOffline);\n $c2db73d795074c30$export$ccee288f4c11aa98._observers = $c2db73d795074c30$export$ccee288f4c11aa98._observers.filter((_observer)=>_observer !== observer);\n };\n });\n }\n // expose observers to simulate offline mode for integration testing\n static _observerOverride(status) {\n for (const observer of this._observers){\n if (observer.closed) {\n this._observers = this._observers.filter((_observer)=>_observer !== observer);\n continue;\n }\n observer?.next && observer.next(status);\n }\n }\n}\n$c2db73d795074c30$export$ccee288f4c11aa98._observers = [];\n\n});\nparcelRegister(\"46Tqd\", function(module, exports) {\n\n$parcel$export(module.exports, \"from\", () => $2fe2b696577919a5$export$6788812c4e6611e6);\n\nvar $ci5Ul = parcelRequire(\"ci5Ul\");\n\nvar $2ypWW = parcelRequire(\"2ypWW\");\nfunction $2fe2b696577919a5$export$6788812c4e6611e6(input, scheduler) {\n return scheduler ? (0, $ci5Ul.scheduled)(input, scheduler) : (0, $2ypWW.innerFrom)(input);\n}\n\n});\nparcelRegister(\"ci5Ul\", function(module, exports) {\n\n$parcel$export(module.exports, \"scheduled\", () => $8f2bbfa9b5105688$export$49c44dfc2bb21d70);\n\nvar $jxGcZ = parcelRequire(\"jxGcZ\");\n\nvar $aS4Ip = parcelRequire(\"aS4Ip\");\n\nvar $16Erw = parcelRequire(\"16Erw\");\n\nvar $4ZsdA = parcelRequire(\"4ZsdA\");\n\nvar $i3S70 = parcelRequire(\"i3S70\");\n\nvar $rOw2q = parcelRequire(\"rOw2q\");\n\nvar $dy1jD = parcelRequire(\"dy1jD\");\n\nvar $bGCU7 = parcelRequire(\"bGCU7\");\n\nvar $fQMll = parcelRequire(\"fQMll\");\n\nvar $aGtFl = parcelRequire(\"aGtFl\");\n\nvar $iolDb = parcelRequire(\"iolDb\");\n\nvar $7gZl2 = parcelRequire(\"7gZl2\");\n\nvar $arhob = parcelRequire(\"arhob\");\nfunction $8f2bbfa9b5105688$export$49c44dfc2bb21d70(input, scheduler) {\n if (input != null) {\n if ((0, $rOw2q.isInteropObservable)(input)) return (0, $jxGcZ.scheduleObservable)(input, scheduler);\n if ((0, $bGCU7.isArrayLike)(input)) return (0, $16Erw.scheduleArray)(input, scheduler);\n if ((0, $dy1jD.isPromise)(input)) return (0, $aS4Ip.schedulePromise)(input, scheduler);\n if ((0, $aGtFl.isAsyncIterable)(input)) return (0, $i3S70.scheduleAsyncIterable)(input, scheduler);\n if ((0, $fQMll.isIterable)(input)) return (0, $4ZsdA.scheduleIterable)(input, scheduler);\n if ((0, $7gZl2.isReadableStreamLike)(input)) return (0, $arhob.scheduleReadableStreamLike)(input, scheduler);\n }\n throw (0, $iolDb.createInvalidObservableTypeError)(input);\n}\n\n});\nparcelRegister(\"jxGcZ\", function(module, exports) {\n\n$parcel$export(module.exports, \"scheduleObservable\", () => $e3a1d71c442b5de9$export$ed8bd553a12b6a30);\n\nvar $2ypWW = parcelRequire(\"2ypWW\");\n\nvar $3blUb = parcelRequire(\"3blUb\");\n\nvar $iNvbf = parcelRequire(\"iNvbf\");\nfunction $e3a1d71c442b5de9$export$ed8bd553a12b6a30(input, scheduler) {\n return (0, $2ypWW.innerFrom)(input).pipe((0, $iNvbf.subscribeOn)(scheduler), (0, $3blUb.observeOn)(scheduler));\n}\n\n});\nparcelRegister(\"3blUb\", function(module, exports) {\n\n$parcel$export(module.exports, \"observeOn\", () => $25136415cad576bc$export$9007f49c319d1ac7);\n\nvar $4yU8l = parcelRequire(\"4yU8l\");\n\nvar $d9kQQ = parcelRequire(\"d9kQQ\");\n\nvar $4QgEI = parcelRequire(\"4QgEI\");\nfunction $25136415cad576bc$export$9007f49c319d1ac7(scheduler, delay) {\n if (delay === void 0) delay = 0;\n return (0, $d9kQQ.operate)(function(source, subscriber) {\n source.subscribe((0, $4QgEI.createOperatorSubscriber)(subscriber, function(value) {\n return (0, $4yU8l.executeSchedule)(subscriber, scheduler, function() {\n return subscriber.next(value);\n }, delay);\n }, function() {\n return (0, $4yU8l.executeSchedule)(subscriber, scheduler, function() {\n return subscriber.complete();\n }, delay);\n }, function(err) {\n return (0, $4yU8l.executeSchedule)(subscriber, scheduler, function() {\n return subscriber.error(err);\n }, delay);\n }));\n });\n}\n\n});\nparcelRegister(\"4yU8l\", function(module, exports) {\n\n$parcel$export(module.exports, \"executeSchedule\", () => $3525e15e439f8b93$export$a2b7447487315232);\nfunction $3525e15e439f8b93$export$a2b7447487315232(parentSubscription, scheduler, work, delay, repeat) {\n if (delay === void 0) delay = 0;\n if (repeat === void 0) repeat = false;\n var scheduleSubscription = scheduler.schedule(function() {\n work();\n if (repeat) parentSubscription.add(this.schedule(null, delay));\n else this.unsubscribe();\n }, delay);\n parentSubscription.add(scheduleSubscription);\n if (!repeat) return scheduleSubscription;\n}\n\n});\n\n\nparcelRegister(\"iNvbf\", function(module, exports) {\n\n$parcel$export(module.exports, \"subscribeOn\", () => $daf4fd612cb884aa$export$1eb44d8f5f64733b);\n\nvar $d9kQQ = parcelRequire(\"d9kQQ\");\nfunction $daf4fd612cb884aa$export$1eb44d8f5f64733b(scheduler, delay) {\n if (delay === void 0) delay = 0;\n return (0, $d9kQQ.operate)(function(source, subscriber) {\n subscriber.add(scheduler.schedule(function() {\n return source.subscribe(subscriber);\n }, delay));\n });\n}\n\n});\n\n\nparcelRegister(\"aS4Ip\", function(module, exports) {\n\n$parcel$export(module.exports, \"schedulePromise\", () => $7ea29ae5d684fb04$export$fc9afd948577f0a8);\n\nvar $2ypWW = parcelRequire(\"2ypWW\");\n\nvar $3blUb = parcelRequire(\"3blUb\");\n\nvar $iNvbf = parcelRequire(\"iNvbf\");\nfunction $7ea29ae5d684fb04$export$fc9afd948577f0a8(input, scheduler) {\n return (0, $2ypWW.innerFrom)(input).pipe((0, $iNvbf.subscribeOn)(scheduler), (0, $3blUb.observeOn)(scheduler));\n}\n\n});\n\nparcelRegister(\"16Erw\", function(module, exports) {\n\n$parcel$export(module.exports, \"scheduleArray\", () => $0ce5b91768be0a6d$export$b34673931371729a);\n\nvar $6OiYn = parcelRequire(\"6OiYn\");\nfunction $0ce5b91768be0a6d$export$b34673931371729a(input, scheduler) {\n return new (0, $6OiYn.Observable)(function(subscriber) {\n var i = 0;\n return scheduler.schedule(function() {\n if (i === input.length) subscriber.complete();\n else {\n subscriber.next(input[i++]);\n if (!subscriber.closed) this.schedule();\n }\n });\n });\n}\n\n});\n\nparcelRegister(\"4ZsdA\", function(module, exports) {\n\n$parcel$export(module.exports, \"scheduleIterable\", () => $3a22bf76b9b6de63$export$2b75c58ab9b5b766);\n\nvar $6OiYn = parcelRequire(\"6OiYn\");\n\nvar $ZpNjd = parcelRequire(\"ZpNjd\");\n\nvar $gCSeg = parcelRequire(\"gCSeg\");\n\nvar $4yU8l = parcelRequire(\"4yU8l\");\nfunction $3a22bf76b9b6de63$export$2b75c58ab9b5b766(input, scheduler) {\n return new (0, $6OiYn.Observable)(function(subscriber) {\n var iterator;\n (0, $4yU8l.executeSchedule)(subscriber, scheduler, function() {\n iterator = input[0, $ZpNjd.iterator]();\n (0, $4yU8l.executeSchedule)(subscriber, scheduler, function() {\n var _a;\n var value;\n var done;\n try {\n _a = iterator.next(), value = _a.value, done = _a.done;\n } catch (err) {\n subscriber.error(err);\n return;\n }\n if (done) subscriber.complete();\n else subscriber.next(value);\n }, 0, true);\n });\n return function() {\n return (0, $gCSeg.isFunction)(iterator === null || iterator === void 0 ? void 0 : iterator.return) && iterator.return();\n };\n });\n}\n\n});\n\nparcelRegister(\"i3S70\", function(module, exports) {\n\n$parcel$export(module.exports, \"scheduleAsyncIterable\", () => $d2627b52a3f1ff1b$export$7c7f0979b56a32f3);\n\nvar $6OiYn = parcelRequire(\"6OiYn\");\n\nvar $4yU8l = parcelRequire(\"4yU8l\");\nfunction $d2627b52a3f1ff1b$export$7c7f0979b56a32f3(input, scheduler) {\n if (!input) throw new Error(\"Iterable cannot be null\");\n return new (0, $6OiYn.Observable)(function(subscriber) {\n (0, $4yU8l.executeSchedule)(subscriber, scheduler, function() {\n var iterator = input[Symbol.asyncIterator]();\n (0, $4yU8l.executeSchedule)(subscriber, scheduler, function() {\n iterator.next().then(function(result) {\n if (result.done) subscriber.complete();\n else subscriber.next(result.value);\n });\n }, 0, true);\n });\n });\n}\n\n});\n\nparcelRegister(\"arhob\", function(module, exports) {\n\n$parcel$export(module.exports, \"scheduleReadableStreamLike\", () => $7999ea1c5b71ad25$export$3385251aeecad28a);\n\nvar $i3S70 = parcelRequire(\"i3S70\");\n\nvar $7gZl2 = parcelRequire(\"7gZl2\");\nfunction $7999ea1c5b71ad25$export$3385251aeecad28a(input, scheduler) {\n return (0, $i3S70.scheduleAsyncIterable)((0, $7gZl2.readableStreamLikeToAsyncGenerator)(input), scheduler);\n}\n\n});\n\n\n\nparcelRegister(\"lt7Sl\", function(module, exports) {\n\n$parcel$export(module.exports, \"isWebWorker\", () => $1f1375287e0673d4$export$97b87b8868ff7a3c);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $1f1375287e0673d4$export$97b87b8868ff7a3c = ()=>{\n if (typeof self === \"undefined\") return false;\n const selfContext = self;\n return typeof selfContext.WorkerGlobalScope !== \"undefined\" && self instanceof selfContext.WorkerGlobalScope;\n};\n\n});\n\n\n\n\nparcelRegister(\"bDWoz\", function(module, exports) {\n\n$parcel$export(module.exports, \"ReconnectEvent\", () => $4197e818e967ca46$export$ce528341f93f43f1);\n$parcel$export(module.exports, \"ReconnectionMonitor\", () => $4197e818e967ca46$export$6d01b279c51a2afb);\n\nvar $fuDKT = parcelRequire(\"fuDKT\");\nvar $4197e818e967ca46$export$ce528341f93f43f1;\n(function(ReconnectEvent) {\n ReconnectEvent[\"START_RECONNECT\"] = \"START_RECONNECT\";\n ReconnectEvent[\"HALT_RECONNECT\"] = \"HALT_RECONNECT\";\n})($4197e818e967ca46$export$ce528341f93f43f1 || ($4197e818e967ca46$export$ce528341f93f43f1 = {}));\n/**\n * Captures the reconnect event logic used to determine when to reconnect to PubSub providers.\n * Reconnnect attempts are delayed by 5 seconds to let the interface settle.\n * Attempting to reconnect only once creates unrecoverable states when the network state isn't\n * supported by the browser, so this keeps retrying every minute until halted.\n */ class $4197e818e967ca46$export$6d01b279c51a2afb {\n constructor(){\n this.reconnectObservers = [];\n }\n /**\n * Add reconnect observer to the list of observers to alert on reconnect\n */ addObserver(reconnectObserver) {\n this.reconnectObservers.push(reconnectObserver);\n }\n /**\n * Given a reconnect event, start the appropriate behavior\n */ record(event) {\n if (event === $4197e818e967ca46$export$ce528341f93f43f1.START_RECONNECT) // If the reconnection hasn't been started\n {\n if (this.reconnectSetTimeoutId === undefined && this.reconnectIntervalId === undefined) this.reconnectSetTimeoutId = setTimeout(()=>{\n // Reconnect now\n this._triggerReconnect();\n // Retry reconnect every periodically until it works\n this.reconnectIntervalId = setInterval(()=>{\n this._triggerReconnect();\n }, (0, $fuDKT.RECONNECT_INTERVAL));\n }, (0, $fuDKT.RECONNECT_DELAY));\n }\n if (event === $4197e818e967ca46$export$ce528341f93f43f1.HALT_RECONNECT) {\n if (this.reconnectIntervalId) {\n clearInterval(this.reconnectIntervalId);\n this.reconnectIntervalId = undefined;\n }\n if (this.reconnectSetTimeoutId) {\n clearTimeout(this.reconnectSetTimeoutId);\n this.reconnectSetTimeoutId = undefined;\n }\n }\n }\n /**\n * Complete all reconnect observers\n */ close() {\n this.reconnectObservers.forEach((reconnectObserver)=>{\n reconnectObserver.complete?.();\n });\n }\n _triggerReconnect() {\n this.reconnectObservers.forEach((reconnectObserver)=>{\n reconnectObserver.next?.();\n });\n }\n}\n\n});\n\n\nparcelRegister(\"4un4F\", function(module, exports) {\n\n$parcel$export(module.exports, \"resolveConfig\", () => $195ef80a28056421$export$7eca4ea16d4c8343);\n\nvar $gJw02 = parcelRequire(\"gJw02\");\n\n\nvar $iGqn8 = parcelRequire(\"iGqn8\");\n\nvar $025mJ = parcelRequire(\"025mJ\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $195ef80a28056421$var$logger = new (0, $gJw02.ConsoleLogger)(\"GraphQLAPI resolveConfig\");\n/**\n * @internal\n */ const $195ef80a28056421$export$7eca4ea16d4c8343 = (amplify)=>{\n const config = amplify.getConfig();\n if (!config.API?.GraphQL) $195ef80a28056421$var$logger.warn(\"The API configuration is missing. This is likely due to Amplify.configure() not being called prior to generateClient().\");\n const { apiKey: apiKey, customEndpoint: customEndpoint, customEndpointRegion: customEndpointRegion, defaultAuthMode: defaultAuthMode, endpoint: endpoint, region: region } = config.API?.GraphQL ?? {};\n // TODO: re-enable when working in all test environments:\n // assertValidationError(!!endpoint, APIValidationErrorCode.NoEndpoint);\n (0, $iGqn8.assertValidationError)(!(!customEndpoint && customEndpointRegion), (0, $025mJ.APIValidationErrorCode).NoCustomEndpoint);\n return {\n apiKey: apiKey,\n customEndpoint: customEndpoint,\n customEndpointRegion: customEndpointRegion,\n defaultAuthMode: defaultAuthMode,\n endpoint: endpoint,\n region: region\n };\n};\n\n});\nparcelRegister(\"iGqn8\", function(module, exports) {\n\n$parcel$export(module.exports, \"assertValidationError\", () => $838eb75e47a73edc$export$45936001d12f9b53);\n\nvar $aPZn6 = parcelRequire(\"aPZn6\");\n\nvar $025mJ = parcelRequire(\"025mJ\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */ function $838eb75e47a73edc$export$45936001d12f9b53(assertion, name) {\n const { message: message, recoverySuggestion: recoverySuggestion } = (0, $025mJ.validationErrorMap)[name];\n if (!assertion) throw new (0, $aPZn6.GraphQLApiError)({\n name: name,\n message: message,\n recoverySuggestion: recoverySuggestion\n });\n}\n\n});\nparcelRegister(\"aPZn6\", function(module, exports) {\n\n$parcel$export(module.exports, \"GraphQLApiError\", () => $e75a423e9aaaec77$export$1d95cbddd5b6dc7f);\n\nvar $e0exy = parcelRequire(\"e0exy\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */ class $e75a423e9aaaec77$export$1d95cbddd5b6dc7f extends (0, $e0exy.AmplifyError) {\n constructor(params){\n super(params);\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = $e75a423e9aaaec77$export$1d95cbddd5b6dc7f;\n Object.setPrototypeOf(this, $e75a423e9aaaec77$export$1d95cbddd5b6dc7f.prototype);\n }\n}\n\n});\n\nparcelRegister(\"025mJ\", function(module, exports) {\n\n$parcel$export(module.exports, \"APIValidationErrorCode\", () => $e1e0ad0aeee1ab28$export$f60466a0651ec80d);\n$parcel$export(module.exports, \"validationErrorMap\", () => $e1e0ad0aeee1ab28$export$195137955146d376);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar $e1e0ad0aeee1ab28$export$f60466a0651ec80d;\n(function(APIValidationErrorCode) {\n APIValidationErrorCode[\"NoAuthSession\"] = \"NoAuthSession\";\n APIValidationErrorCode[\"NoRegion\"] = \"NoRegion\";\n APIValidationErrorCode[\"NoCustomEndpoint\"] = \"NoCustomEndpoint\";\n})($e1e0ad0aeee1ab28$export$f60466a0651ec80d || ($e1e0ad0aeee1ab28$export$f60466a0651ec80d = {}));\nconst $e1e0ad0aeee1ab28$export$195137955146d376 = {\n [$e1e0ad0aeee1ab28$export$f60466a0651ec80d.NoAuthSession]: {\n message: \"Auth session should not be empty.\"\n },\n // TODO: re-enable when working in all test environments:\n // [APIValidationErrorCode.NoEndpoint]: {\n // \tmessage: 'Missing endpoint',\n // },\n [$e1e0ad0aeee1ab28$export$f60466a0651ec80d.NoRegion]: {\n message: \"Missing region.\"\n },\n [$e1e0ad0aeee1ab28$export$f60466a0651ec80d.NoCustomEndpoint]: {\n message: \"Custom endpoint region is present without custom endpoint.\"\n }\n};\n\n});\n\n\n\nparcelRegister(\"2bSZt\", function(module, exports) {\n\n$parcel$export(module.exports, \"resolveLibraryOptions\", () => $5ba9283f5eedfa02$export$101b589a61b1975e);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */ const $5ba9283f5eedfa02$export$101b589a61b1975e = (amplify)=>{\n const headers = amplify.libraryOptions?.API?.GraphQL?.headers;\n const withCredentials = amplify.libraryOptions?.API?.GraphQL?.withCredentials;\n return {\n headers: headers,\n withCredentials: withCredentials\n };\n};\n\n});\n\nparcelRegister(\"027iw\", function(module, exports) {\n\n$parcel$export(module.exports, \"repackageUnauthError\", () => $5bc2672d5026b0ee$export$132294d0bd987c58);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Checks to see if the given response or subscription message contains an\n * unauth error. If it does, it changes the error message to include instructions\n * for the app developer.\n */ function $5bc2672d5026b0ee$export$132294d0bd987c58(content) {\n if (content.errors && Array.isArray(content.errors)) content.errors.forEach((e)=>{\n if ($5bc2672d5026b0ee$var$isUnauthError(e)) {\n e.message = \"Unauthorized\";\n e.recoverySuggestion = `If you're calling an Amplify-generated API, make sure ` + `to set the \"authMode\" in generateClient({ authMode: '...' }) to the backend authorization ` + `rule's auth provider ('apiKey', 'userPool', 'iam', 'oidc', 'lambda')`;\n }\n });\n return content;\n}\nfunction $5bc2672d5026b0ee$var$isUnauthError(error) {\n // Error pattern corresponding to appsync calls\n if (error?.[\"originalError\"]?.[\"name\"]?.startsWith(\"UnauthorizedException\")) return true;\n // Error pattern corresponding to appsync subscriptions\n if (error.message?.startsWith(\"Connection failed:\") && error.message?.includes(\"Permission denied\")) return true;\n return false;\n}\n\n});\n\n\n\n\nparcelRegister(\"8cam8\", function(module, exports) {\n\n$parcel$export(module.exports, \"generateModelsProperty\", () => $676fbae06b1dd615$export$7aa40502ac76885f);\n\nvar $34Y9w = parcelRequire(\"34Y9w\");\n\nvar $jrkdU = parcelRequire(\"jrkdU\");\n\nvar $4Vvms = parcelRequire(\"4Vvms\");\n\nvar $7fgpS = parcelRequire(\"7fgpS\");\n\nvar $5mUlK = parcelRequire(\"5mUlK\");\nfunction $676fbae06b1dd615$export$7aa40502ac76885f(client, params) {\n const models = {};\n const config = params.amplify.getConfig();\n if (!config.API?.GraphQL) // breaks compatibility with certain bundler, e.g. Vite where component files are evaluated before\n // the entry point causing false positive errors. Revisit how to better handle this post-launch\n // throw new Error(\n // \t'The API configuration is missing. This is likely due to Amplify.configure() not being called\n // prior to generateClient().'\n // );\n return {};\n const modelIntrospection = config.API.GraphQL.modelIntrospection;\n if (!modelIntrospection) return {};\n const SUBSCRIPTION_OPS = [\n \"ONCREATE\",\n \"ONUPDATE\",\n \"ONDELETE\"\n ];\n for (const model of Object.values(modelIntrospection.models)){\n const { name: name } = model;\n models[name] = {};\n Object.entries((0, $34Y9w.graphQLOperationsInfo)).forEach(([key, { operationPrefix: operationPrefix }])=>{\n const operation = key;\n if (operation === \"LIST\") models[name][operationPrefix] = (0, $jrkdU.listFactory)(client, modelIntrospection, model);\n else if (SUBSCRIPTION_OPS.includes(operation)) models[name][operationPrefix] = (0, $7fgpS.subscriptionFactory)(client, modelIntrospection, model, operation);\n else if (operation === \"OBSERVE_QUERY\") models[name][operationPrefix] = (0, $5mUlK.observeQueryFactory)(models, model);\n else models[name][operationPrefix] = (0, $4Vvms.getFactory)(client, modelIntrospection, model, operation);\n });\n }\n return models;\n}\n\n});\nparcelRegister(\"34Y9w\", function(module, exports) {\n\n$parcel$export(module.exports, \"flattenItems\", () => $ce6c69ad8e54ec20$export$a1df7bca853facc8);\n$parcel$export(module.exports, \"initializeModel\", () => $ce6c69ad8e54ec20$export$2dab78d5abd0247d);\n$parcel$export(module.exports, \"graphQLOperationsInfo\", () => $ce6c69ad8e54ec20$export$c2d7461810dc0165);\n$parcel$export(module.exports, \"generateGraphQLDocument\", () => $ce6c69ad8e54ec20$export$d6645ba197f595e0);\n$parcel$export(module.exports, \"buildGraphQLVariables\", () => $ce6c69ad8e54ec20$export$95bea254c9042858);\n$parcel$export(module.exports, \"authModeParams\", () => $ce6c69ad8e54ec20$export$f5679e96571d0641);\n$parcel$export(module.exports, \"getCustomHeaders\", () => $ce6c69ad8e54ec20$export$3fc25db7b420c1a4);\n\nvar $7y4CF = parcelRequire(\"7y4CF\");\n\nvar $lvJDy = parcelRequire(\"lvJDy\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst $ce6c69ad8e54ec20$var$connectionType = {\n HAS_ONE: \"HAS_ONE\",\n HAS_MANY: \"HAS_MANY\",\n BELONGS_TO: \"BELONGS_TO\"\n};\n/**\n *\n * @param GraphQL response object\n * @returns response object with `items` properties flattened\n */ const $ce6c69ad8e54ec20$export$a1df7bca853facc8 = (obj)=>{\n const res = {};\n Object.entries(obj).forEach(([prop, value])=>{\n if (typeof value === \"object\" && !Array.isArray(value) && value !== null) {\n if (value.items !== undefined) {\n res[prop] = value.items.map((item)=>$ce6c69ad8e54ec20$export$a1df7bca853facc8(item));\n return;\n }\n res[prop] = $ce6c69ad8e54ec20$export$a1df7bca853facc8(value);\n return;\n }\n res[prop] = value;\n });\n return res;\n};\n// TODO: this should accept single result to support CRUD methods; create helper for array/list\nfunction $ce6c69ad8e54ec20$export$2dab78d5abd0247d(client, modelName, result, modelIntrospection, authMode, authToken, context = false) {\n const introModel = modelIntrospection.models[modelName];\n const introModelFields = introModel.fields;\n const modelFields = Object.entries(introModelFields).filter(([_, field])=>field?.type?.model !== undefined).map(([fieldName])=>fieldName);\n return result.map((record)=>{\n const initializedRelationalFields = {};\n for (const fieldName of modelFields){\n const modelField = introModelFields[fieldName];\n const modelFieldType = modelField?.type;\n const relatedModelName = modelFieldType.model;\n const relatedModel = modelIntrospection.models[relatedModelName];\n const relatedModelPKFieldName = relatedModel.primaryKeyInfo.primaryKeyFieldName;\n const relatedModelSKFieldNames = relatedModel.primaryKeyInfo.sortKeyFieldNames;\n const relationType = modelField.association?.connectionType;\n let connectionFields = [];\n if (modelField.association && \"associatedWith\" in modelField.association) connectionFields = modelField.association.associatedWith;\n let targetNames = [];\n if (modelField.association && \"targetNames\" in modelField.association) targetNames = modelField.association.targetNames;\n switch(relationType){\n case $ce6c69ad8e54ec20$var$connectionType.HAS_ONE:\n case $ce6c69ad8e54ec20$var$connectionType.BELONGS_TO:\n const sortKeyValues = relatedModelSKFieldNames.reduce((acc, curVal)=>{\n if (record[curVal]) return acc[curVal] = record[curVal];\n }, {});\n if (context) initializedRelationalFields[fieldName] = (contextSpec, options)=>{\n if (record[targetNames[0]]) return client.models[relatedModelName].get(contextSpec, {\n [relatedModelPKFieldName]: record[targetNames[0]],\n ...sortKeyValues\n }, {\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken\n });\n return undefined;\n };\n else initializedRelationalFields[fieldName] = (options)=>{\n if (record[targetNames[0]]) return client.models[relatedModelName].get({\n [relatedModelPKFieldName]: record[targetNames[0]],\n ...sortKeyValues\n }, {\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken\n });\n return undefined;\n };\n break;\n case $ce6c69ad8e54ec20$var$connectionType.HAS_MANY:\n const parentPk = introModel.primaryKeyInfo.primaryKeyFieldName;\n const parentSK = introModel.primaryKeyInfo.sortKeyFieldNames;\n // M:N check - TODO: refactor\n const relatedModelField = relatedModel.fields[connectionFields[0]];\n const relatedModelFieldType = relatedModelField.type;\n if (relatedModelFieldType.model) {\n let relatedTargetNames = [];\n if (relatedModelField.association && \"targetNames\" in relatedModelField.association) relatedTargetNames = relatedModelField.association?.targetNames;\n const hasManyFilter = relatedTargetNames.map((field, idx)=>{\n if (idx === 0) return {\n [field]: {\n eq: record[parentPk]\n }\n };\n return {\n [field]: {\n eq: record[parentSK[idx - 1]]\n }\n };\n });\n if (context) initializedRelationalFields[fieldName] = (contextSpec, options)=>{\n if (record[parentPk]) return client.models[relatedModelName].list(contextSpec, {\n filter: {\n and: hasManyFilter\n },\n limit: options?.limit,\n nextToken: options?.nextToken,\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken\n });\n return [];\n };\n else initializedRelationalFields[fieldName] = (options)=>{\n if (record[parentPk]) return client.models[relatedModelName].list({\n filter: {\n and: hasManyFilter\n },\n limit: options?.limit,\n nextToken: options?.nextToken,\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken\n });\n return [];\n };\n break;\n }\n const hasManyFilter = connectionFields.map((field, idx)=>{\n if (idx === 0) return {\n [field]: {\n eq: record[parentPk]\n }\n };\n return {\n [field]: {\n eq: record[parentSK[idx - 1]]\n }\n };\n });\n if (context) initializedRelationalFields[fieldName] = (contextSpec, options)=>{\n if (record[parentPk]) return client.models[relatedModelName].list(contextSpec, {\n filter: {\n and: hasManyFilter\n },\n limit: options?.limit,\n nextToken: options?.nextToken,\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken\n });\n return [];\n };\n else initializedRelationalFields[fieldName] = (options)=>{\n if (record[parentPk]) return client.models[relatedModelName].list({\n filter: {\n and: hasManyFilter\n },\n limit: options?.limit,\n nextToken: options?.nextToken,\n authMode: options?.authMode || authMode,\n authToken: options?.authToken || authToken\n });\n return [];\n };\n break;\n }\n }\n return {\n ...record,\n ...initializedRelationalFields\n };\n });\n}\nconst $ce6c69ad8e54ec20$export$c2d7461810dc0165 = {\n CREATE: {\n operationPrefix: \"create\",\n usePlural: false\n },\n READ: {\n operationPrefix: \"get\",\n usePlural: false\n },\n UPDATE: {\n operationPrefix: \"update\",\n usePlural: false\n },\n DELETE: {\n operationPrefix: \"delete\",\n usePlural: false\n },\n LIST: {\n operationPrefix: \"list\",\n usePlural: true\n },\n ONCREATE: {\n operationPrefix: \"onCreate\",\n usePlural: false\n },\n ONUPDATE: {\n operationPrefix: \"onUpdate\",\n usePlural: false\n },\n ONDELETE: {\n operationPrefix: \"onDelete\",\n usePlural: false\n },\n OBSERVE_QUERY: {\n operationPrefix: \"observeQuery\",\n usePlural: false\n }\n};\nconst $ce6c69ad8e54ec20$var$SELECTION_SET_WILDCARD = \"*\";\nfunction $ce6c69ad8e54ec20$var$defaultSelectionSetForModel(modelDefinition) {\n // fields that are explicitly part of the graphql schema; not\n // inferred from owner auth rules.\n const { fields: fields } = modelDefinition;\n const explicitFields = Object.values(fields)// Default selection set omits model fields\n .map(({ type: type, name: name })=>(typeof type === \"string\" || typeof type === \"object\" && typeof type?.enum === \"string\") && name).filter(Boolean);\n // fields used for owner auth rules that may or may not also\n // be explicit on the model.\n const ownerFields = (0, $7y4CF.resolveOwnerFields)(modelDefinition);\n return Array.from(new Set(explicitFields.concat(ownerFields)));\n}\nconst $ce6c69ad8e54ec20$var$FIELD_IR = \"\";\n/**\n * Generates nested Custom Selection Set IR from path\n *\n * @param modelDefinitions\n * @param modelName\n * @param selectionSet - array of object paths\n * @example\n * ### Given\n * `selectionSet = ['id', 'comments.post.id']`\n * ### Returns\n * ```ts\n * {\n * id: '',\n * comments: {\n * items: { post: { id: '' } }\n * }\n * }\n * ```\n */ function $ce6c69ad8e54ec20$export$be1dc2e500ab0740(modelDefinitions, modelName, selectionSet) {\n const dotNotationToObject = (path, modelName)=>{\n const [fieldName, ...rest] = path.split(\".\");\n let result = {};\n if (rest.length === 0) result = {\n [fieldName]: $ce6c69ad8e54ec20$var$FIELD_IR\n };\n else {\n const nested = rest[0];\n const modelDefinition = modelDefinitions[modelName];\n const modelFields = modelDefinition.fields;\n const relatedModel = modelFields[fieldName]?.type?.model;\n if (!relatedModel) // TODO: may need to change this to support custom types\n throw Error(`${fieldName} is not a model field`);\n if (nested === $ce6c69ad8e54ec20$var$SELECTION_SET_WILDCARD) {\n const relatedModelDefinition = modelDefinitions[relatedModel];\n result = {\n [fieldName]: $ce6c69ad8e54ec20$var$defaultSelectionSetIR(relatedModelDefinition)\n };\n } else {\n const exists = Boolean(modelFields[fieldName]);\n if (!exists) throw Error(`${fieldName} is not a field of model ${modelName}`);\n result = {\n [fieldName]: dotNotationToObject(rest.join(\".\"), relatedModel)\n };\n }\n if (modelFields[fieldName]?.isArray) result = {\n [fieldName]: {\n items: result[fieldName]\n }\n };\n }\n return result;\n };\n return selectionSet.reduce((resultObj, path)=>$ce6c69ad8e54ec20$var$deepMergeSelectionSetObjects(dotNotationToObject(path, modelName), resultObj), {});\n}\nconst $ce6c69ad8e54ec20$var$defaultSelectionSetIR = (relatedModelDefinition)=>{\n const defaultSelectionSet = $ce6c69ad8e54ec20$var$defaultSelectionSetForModel(relatedModelDefinition);\n const reduced = defaultSelectionSet.reduce((acc, curVal)=>{\n acc[curVal] = $ce6c69ad8e54ec20$var$FIELD_IR;\n return acc;\n }, {});\n return reduced;\n};\n/**\n * Stringifies selection set IR\n * * @example\n * ### Given\n * ```ts\n * {\n * id: '',\n * comments: {\n * items: { post: { id: '' } }\n * }\n * }\n * ```\n * ### Returns\n * `'id comments { items { post { id } } }'`\n */ function $ce6c69ad8e54ec20$export$c9a913a0e0b06132(obj) {\n const res = [];\n Object.entries(obj).forEach(([fieldName, value])=>{\n if (value === $ce6c69ad8e54ec20$var$FIELD_IR) res.push(fieldName);\n else if (typeof value === \"object\" && value !== null) {\n if (value?.items) res.push(fieldName, \"{\", \"items\", \"{\", $ce6c69ad8e54ec20$export$c9a913a0e0b06132(value.items), \"}\", \"}\");\n else res.push(fieldName, \"{\", $ce6c69ad8e54ec20$export$c9a913a0e0b06132(value), \"}\");\n }\n });\n return res.join(\" \");\n}\n/**\n * Recursively merges selection set objects from `source` onto `target`.\n *\n * `target` will be updated. `source` will be left alone.\n *\n * @param source The object to merge into target.\n * @param target The object to be mutated.\n */ function $ce6c69ad8e54ec20$var$deepMergeSelectionSetObjects(source, target) {\n const isObject = (obj)=>obj && typeof obj === \"object\";\n for(const key in source){\n // This verification avoids 'Prototype Pollution' issue\n if (!source.hasOwnProperty(key)) continue;\n if (target.hasOwnProperty(key) && isObject(target[key])) $ce6c69ad8e54ec20$var$deepMergeSelectionSetObjects(source[key], target[key]);\n else target[key] = source[key];\n }\n return target;\n}\nfunction $ce6c69ad8e54ec20$export$f1b80cae6b6c9807(modelDefinitions, modelName, selectionSet) {\n const modelDefinition = modelDefinitions[modelName];\n if (!selectionSet) return $ce6c69ad8e54ec20$var$defaultSelectionSetForModel(modelDefinition).join(\" \");\n const selSetIr = $ce6c69ad8e54ec20$export$be1dc2e500ab0740(modelDefinitions, modelName, selectionSet);\n const selSetString = $ce6c69ad8e54ec20$export$c9a913a0e0b06132(selSetIr);\n return selSetString;\n}\nfunction $ce6c69ad8e54ec20$export$d6645ba197f595e0(modelDefinitions, modelName, modelOperation, listArgs) {\n const modelDefinition = modelDefinitions[modelName];\n const { name: name, pluralName: pluralName, fields: fields, primaryKeyInfo: { isCustomPrimaryKey: isCustomPrimaryKey, primaryKeyFieldName: primaryKeyFieldName, sortKeyFieldNames: sortKeyFieldNames } } = modelDefinition;\n const { operationPrefix: operationPrefix, usePlural: usePlural } = $ce6c69ad8e54ec20$export$c2d7461810dc0165[modelOperation];\n const { selectionSet: selectionSet } = listArgs || {};\n const graphQLFieldName = `${operationPrefix}${usePlural ? pluralName : name}`;\n let graphQLOperationType;\n let graphQLSelectionSet;\n let graphQLArguments;\n const selectionSetFields = $ce6c69ad8e54ec20$export$f1b80cae6b6c9807(modelDefinitions, modelName, selectionSet);\n switch(modelOperation){\n case \"CREATE\":\n case \"UPDATE\":\n case \"DELETE\":\n graphQLArguments ?? (graphQLArguments = {\n input: `${operationPrefix.charAt(0).toLocaleUpperCase() + operationPrefix.slice(1)}${name}Input!`\n });\n graphQLOperationType ?? (graphQLOperationType = \"mutation\");\n case \"READ\":\n graphQLArguments ?? (graphQLArguments = isCustomPrimaryKey ? [\n primaryKeyFieldName,\n ...sortKeyFieldNames\n ].reduce((acc, fieldName)=>{\n acc[fieldName] = `${fields[fieldName].type}!`;\n return acc;\n }, {}) : {\n [primaryKeyFieldName]: `${fields[primaryKeyFieldName].type}!`\n });\n graphQLSelectionSet ?? (graphQLSelectionSet = selectionSetFields);\n case \"LIST\":\n graphQLArguments ?? (graphQLArguments = {\n filter: `Model${name}FilterInput`,\n limit: \"Int\",\n nextToken: \"String\"\n });\n graphQLOperationType ?? (graphQLOperationType = \"query\");\n graphQLSelectionSet ?? (graphQLSelectionSet = `items { ${selectionSetFields} } nextToken __typename`);\n case \"ONCREATE\":\n case \"ONUPDATE\":\n case \"ONDELETE\":\n graphQLArguments ?? (graphQLArguments = {\n filter: `ModelSubscription${name}FilterInput`\n });\n graphQLOperationType ?? (graphQLOperationType = \"subscription\");\n graphQLSelectionSet ?? (graphQLSelectionSet = selectionSetFields);\n break;\n case \"OBSERVE_QUERY\":\n default:\n throw new Error(\"Internal error: Attempted to generate graphql document for observeQuery. Please report this error.\");\n }\n const graphQLDocument = `${graphQLOperationType}${graphQLArguments ? `(${Object.entries(graphQLArguments).map(([fieldName, type])=>`\\$${fieldName}: ${type}`)})` : \"\"} { ${graphQLFieldName}${graphQLArguments ? `(${Object.keys(graphQLArguments).map((fieldName)=>`${fieldName}: \\$${fieldName}`)})` : \"\"} { ${graphQLSelectionSet} } }`;\n return graphQLDocument;\n}\nfunction $ce6c69ad8e54ec20$export$95bea254c9042858(modelDefinition, operation, arg, modelIntrospection) {\n const { fields: fields, primaryKeyInfo: { isCustomPrimaryKey: isCustomPrimaryKey, primaryKeyFieldName: primaryKeyFieldName, sortKeyFieldNames: sortKeyFieldNames } } = modelDefinition;\n let variables = {};\n // TODO: process input\n switch(operation){\n case \"CREATE\":\n variables = {\n input: arg ? $ce6c69ad8e54ec20$export$ab9adbcee87919b5(arg, modelDefinition, modelIntrospection) : {}\n };\n break;\n case \"UPDATE\":\n // readonly fields are not updated\n variables = {\n input: arg ? Object.fromEntries(Object.entries($ce6c69ad8e54ec20$export$ab9adbcee87919b5(arg, modelDefinition, modelIntrospection)).filter(([fieldName])=>{\n const { isReadOnly: isReadOnly } = fields[fieldName];\n return !isReadOnly;\n })) : {}\n };\n break;\n case \"READ\":\n case \"DELETE\":\n // only identifiers are sent\n if (arg) variables = isCustomPrimaryKey ? [\n primaryKeyFieldName,\n ...sortKeyFieldNames\n ].reduce((acc, fieldName)=>{\n acc[fieldName] = arg[fieldName];\n return acc;\n }, {}) : {\n [primaryKeyFieldName]: arg[primaryKeyFieldName]\n };\n if (operation === \"DELETE\") variables = {\n input: variables\n };\n break;\n case \"LIST\":\n if (arg?.filter) variables.filter = arg.filter;\n if (arg?.nextToken) variables.nextToken = arg.nextToken;\n if (arg?.limit) variables.limit = arg.limit;\n break;\n case \"ONCREATE\":\n case \"ONUPDATE\":\n case \"ONDELETE\":\n if (arg?.filter) variables = {\n filter: arg.filter\n };\n break;\n case \"OBSERVE_QUERY\":\n throw new Error(\"Internal error: Attempted to build variables for observeQuery. Please report this error.\");\n default:\n const exhaustiveCheck = operation;\n throw new Error(`Unhandled operation case: ${exhaustiveCheck}`);\n }\n return variables;\n}\n/**\n * Iterates over mutation input values and resolves any model inputs to their corresponding join fields/values\n *\n * @example\n * ### Usage\n * ```ts\n * const result = normalizeMutationInput({ post: post }, model, modelDefinition);\n * ```\n * ### Result\n * ```ts\n * { postId: \"abc123\" }\n * ```\n *\n */ function $ce6c69ad8e54ec20$export$ab9adbcee87919b5(mutationInput, model, modelIntrospection) {\n const { fields: fields } = model;\n const normalized = {};\n Object.entries(mutationInput).forEach(([inputFieldName, inputValue])=>{\n const fieldType = fields[inputFieldName]?.type;\n const relatedModelName = fieldType?.model;\n if (relatedModelName) {\n const association = fields[inputFieldName]?.association;\n const relatedModelDef = modelIntrospection.models[relatedModelName];\n const relatedModelPkInfo = relatedModelDef.primaryKeyInfo;\n if (association?.connectionType === $ce6c69ad8e54ec20$var$connectionType.HAS_ONE) {\n const associationHasOne = association;\n associationHasOne.targetNames.forEach((targetName, idx)=>{\n const associatedFieldName = associationHasOne.associatedWith[idx];\n normalized[targetName] = inputValue[associatedFieldName];\n });\n }\n if (association?.connectionType === $ce6c69ad8e54ec20$var$connectionType.BELONGS_TO) {\n const associationBelongsTo = association;\n associationBelongsTo.targetNames.forEach((targetName, idx)=>{\n if (idx === 0) {\n const associatedFieldName = relatedModelPkInfo.primaryKeyFieldName;\n normalized[targetName] = inputValue[associatedFieldName];\n } else {\n const associatedFieldName = relatedModelPkInfo.sortKeyFieldNames[idx - 1];\n normalized[targetName] = inputValue[associatedFieldName];\n }\n });\n }\n } else normalized[inputFieldName] = inputValue;\n });\n return normalized;\n}\n/**\n * Produces a parameter object that can contains auth mode/token overrides\n * only if present in either `options` (first) or configured on the `client`\n * as a fallback.\n *\n * @param client Configured client from `generateClient`\n * @param options Args/Options obect from call site.\n * @returns\n */ function $ce6c69ad8e54ec20$export$f5679e96571d0641(client, options = {}) {\n return {\n authMode: options.authMode || client[0, $lvJDy.__authMode],\n authToken: options.authToken || client[0, $lvJDy.__authToken]\n };\n}\n/**\n * Retrieves custom headers from either the client or request options.\n * @param {client} V6Client | V6ClientSSRRequest | V6ClientSSRCookies - for extracting client headers\n * @param {requestHeaders} [CustomHeaders] - request headers\n * @returns {CustomHeaders} - custom headers\n */ function $ce6c69ad8e54ec20$export$3fc25db7b420c1a4(client, requestHeaders) {\n let headers = client[0, $lvJDy.__headers] || {};\n // Individual request headers will take precedence over client headers.\n // We intentionally do *not* merge client and request headers.\n if (requestHeaders) headers = requestHeaders;\n return headers;\n}\n\n});\nparcelRegister(\"7y4CF\", function(module, exports) {\n\n$parcel$export(module.exports, \"resolveOwnerFields\", () => $75f9c59c45b035b9$export$597cd394a923f2bd);\n/**\n * Given an introspection schema model, returns all owner fields.\n *\n * @param model Model from an introspection schema\n * @returns List of owner field names\n */ function $75f9c59c45b035b9$export$597cd394a923f2bd(model) {\n const ownerFields = new Set();\n for (const attr of model.attributes || [])if ($75f9c59c45b035b9$var$isAuthAttribute(attr)) {\n for (const rule of attr.properties.rules)if (rule.allow === \"owner\") ownerFields.add(rule.ownerField || \"owner\");\n }\n return Array.from(ownerFields);\n}\n/**\n * Type guard that identifies an auth attribute with an attached rules list that\n * specifies an `allow` attribute at a minimum.\n *\n * @param attribute Any object. Ideally a model introspection schema model attribute\n * @returns True if given object is an auth attribute\n */ function $75f9c59c45b035b9$var$isAuthAttribute(attribute) {\n if (attribute?.type === \"auth\") {\n if (typeof attribute?.properties === \"object\") {\n if (Array.isArray(attribute?.properties?.rules)) return attribute?.properties?.rules.every((rule)=>!!rule.allow);\n }\n }\n return false;\n}\n\n});\n\n\nparcelRegister(\"jrkdU\", function(module, exports) {\n\n$parcel$export(module.exports, \"listFactory\", () => $123412da346ca4b9$export$b6e08b958e381d1b);\n\nvar $34Y9w = parcelRequire(\"34Y9w\");\nfunction $123412da346ca4b9$export$b6e08b958e381d1b(client, modelIntrospection, model, context = false) {\n const listWithContext = async (contextSpec, args)=>{\n return $123412da346ca4b9$var$_list(client, modelIntrospection, model, args, contextSpec);\n };\n const list = async (args)=>{\n return $123412da346ca4b9$var$_list(client, modelIntrospection, model, args);\n };\n return context ? listWithContext : list;\n}\nasync function $123412da346ca4b9$var$_list(client, modelIntrospection, model, args, contextSpec) {\n const { name: name } = model;\n const query = (0, $34Y9w.generateGraphQLDocument)(modelIntrospection.models, name, \"LIST\", args);\n const variables = (0, $34Y9w.buildGraphQLVariables)(model, \"LIST\", args, modelIntrospection);\n try {\n const auth = (0, $34Y9w.authModeParams)(client, args);\n const headers = (0, $34Y9w.getCustomHeaders)(client, args?.headers);\n const { data: data, extensions: extensions } = !!contextSpec ? await client.graphql(contextSpec, {\n ...auth,\n query: query,\n variables: variables\n }, headers) : await client.graphql({\n ...auth,\n query: query,\n variables: variables\n }, headers);\n // flatten response\n if (data !== undefined) {\n const [key] = Object.keys(data);\n if (data[key].items) {\n const flattenedResult = (0, $34Y9w.flattenItems)(data)[key];\n // don't init if custom selection set\n if (args?.selectionSet) return {\n data: flattenedResult,\n nextToken: data[key].nextToken,\n extensions: extensions\n };\n else {\n const initialized = (0, $34Y9w.initializeModel)(client, name, flattenedResult, modelIntrospection, auth.authMode, auth.authToken, !!contextSpec);\n return {\n data: initialized,\n nextToken: data[key].nextToken,\n extensions: extensions\n };\n }\n }\n return {\n data: data[key],\n nextToken: data[key].nextToken,\n extensions: extensions\n };\n }\n } catch (error) {\n if (error.errors) // graphql errors pass through\n return error;\n else // non-graphql errors re re-thrown\n throw error;\n }\n}\n\n});\n\nparcelRegister(\"4Vvms\", function(module, exports) {\n\n$parcel$export(module.exports, \"getFactory\", () => $7bff1b9f98e0e4a5$export$4dc777407e7dc1ac);\n\nvar $34Y9w = parcelRequire(\"34Y9w\");\nfunction $7bff1b9f98e0e4a5$export$4dc777407e7dc1ac(client, modelIntrospection, model, operation, useContext = false) {\n const getWithContext = async (contextSpec, arg, options)=>{\n return $7bff1b9f98e0e4a5$var$_get(client, modelIntrospection, model, arg, options, operation, contextSpec);\n };\n const get = async (arg, options)=>{\n return $7bff1b9f98e0e4a5$var$_get(client, modelIntrospection, model, arg, options, operation);\n };\n return useContext ? getWithContext : get;\n}\nasync function $7bff1b9f98e0e4a5$var$_get(client, modelIntrospection, model, arg, options, operation, context) {\n const { name: name } = model;\n const query = (0, $34Y9w.generateGraphQLDocument)(modelIntrospection.models, name, operation, options);\n const variables = (0, $34Y9w.buildGraphQLVariables)(model, operation, arg, modelIntrospection);\n try {\n const auth = (0, $34Y9w.authModeParams)(client, options);\n const headers = (0, $34Y9w.getCustomHeaders)(client, options?.headers);\n const { data: data, extensions: extensions } = context ? await client.graphql(context, {\n ...auth,\n query: query,\n variables: variables\n }, headers) : await client.graphql({\n ...auth,\n query: query,\n variables: variables\n }, headers);\n // flatten response\n if (data) {\n const [key] = Object.keys(data);\n const flattenedResult = (0, $34Y9w.flattenItems)(data)[key];\n if (options?.selectionSet) return {\n data: flattenedResult,\n extensions: extensions\n };\n else {\n // TODO: refactor to avoid destructuring here\n const [initialized] = (0, $34Y9w.initializeModel)(client, name, [\n flattenedResult\n ], modelIntrospection, auth.authMode, auth.authToken, !!context);\n return {\n data: initialized,\n extensions: extensions\n };\n }\n } else return {\n data: null,\n extensions: extensions\n };\n } catch (error) {\n if (error.errors) // graphql errors pass through\n return error;\n else // non-graphql errors re re-thrown\n throw error;\n }\n}\n\n});\n\nparcelRegister(\"7fgpS\", function(module, exports) {\n\n$parcel$export(module.exports, \"subscriptionFactory\", () => $f3a38387185e555a$export$90a8a93856dc32cc);\n\nvar $d4PzE = parcelRequire(\"d4PzE\");\n\nvar $34Y9w = parcelRequire(\"34Y9w\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $f3a38387185e555a$export$90a8a93856dc32cc(client, modelIntrospection, model, operation) {\n const { name: name } = model;\n const subscription = (args)=>{\n const query = (0, $34Y9w.generateGraphQLDocument)(modelIntrospection.models, name, operation);\n const variables = (0, $34Y9w.buildGraphQLVariables)(model, operation, args, modelIntrospection);\n const auth = (0, $34Y9w.authModeParams)(client, args);\n const headers = (0, $34Y9w.getCustomHeaders)(client, args?.headers);\n const observable = client.graphql({\n ...auth,\n query: query,\n variables: variables\n }, headers);\n return observable.pipe((0, $d4PzE.map)((value)=>{\n const [key] = Object.keys(value.data);\n const data = value.data[key];\n const [initialized] = (0, $34Y9w.initializeModel)(client, name, [\n data\n ], modelIntrospection, auth.authMode, auth.authToken);\n return initialized;\n }));\n };\n return subscription;\n}\n\n});\n\nparcelRegister(\"5mUlK\", function(module, exports) {\n\n$parcel$export(module.exports, \"observeQueryFactory\", () => $be2633a784525c2c$export$9cf24fed4882559a);\n\nvar $6OiYn = parcelRequire(\"6OiYn\");\n\n\nvar $3Ot4Z = parcelRequire(\"3Ot4Z\");\n\nvar $kUVqC = parcelRequire(\"kUVqC\");\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction $be2633a784525c2c$export$9cf24fed4882559a(models, model) {\n const { name: name } = model;\n const observeQuery = (arg)=>new (0, $6OiYn.Observable)((subscriber)=>{\n // what we'll be sending to our subscribers\n const items = [];\n // To enqueue subscription messages while we collect our initial\n // result set.\n const messageQueue = [];\n // operation to take when message(s) arrive.\n // this operation will be swapped out once initial \"sync\" is complete\n // to immediately ingest messsages.\n let receiveMessages = (...messages)=>{\n return messageQueue.push(...messages);\n };\n // start subscriptions\n const onCreateSub = models[name].onCreate(arg).subscribe({\n next (item) {\n receiveMessages({\n item: item,\n type: \"create\"\n });\n },\n error (error) {\n subscriber.error({\n type: \"onCreate\",\n error: error\n });\n }\n });\n const onUpdateSub = models[name].onUpdate(arg).subscribe({\n next (item) {\n receiveMessages({\n item: item,\n type: \"update\"\n });\n },\n error (error) {\n subscriber.error({\n type: \"onUpdate\",\n error: error\n });\n }\n });\n const onDeleteSub = models[name].onDelete(arg).subscribe({\n next (item) {\n receiveMessages({\n item: item,\n type: \"delete\"\n });\n },\n error (error) {\n subscriber.error({\n type: \"onDelete\",\n error: error\n });\n }\n });\n // consumes a list of messages and sends a snapshot\n function ingestMessages(messages) {\n for (const message of messages){\n const idx = (0, $kUVqC.findIndexByFields)(message.item, items, pkFields);\n switch(message.type){\n case \"create\":\n if (idx < 0) items.push(message.item);\n break;\n case \"update\":\n if (idx >= 0) items[idx] = message.item;\n break;\n case \"delete\":\n if (idx >= 0) items.splice(idx, 1);\n break;\n default:\n console.error(\"Unrecognized message in observeQuery.\", message);\n }\n }\n subscriber.next({\n items: items,\n isSynced: true\n });\n }\n const pkFields = (0, $3Ot4Z.resolvePKFields)(model);\n // initial results\n (async ()=>{\n let firstPage = true;\n let nextToken = null;\n while(!subscriber.closed && (firstPage || nextToken)){\n firstPage = false;\n const { data: page, errors: errors, nextToken: _nextToken } = await models[name].list({\n ...arg,\n nextToken: nextToken\n });\n nextToken = _nextToken;\n items.push(...page);\n // if there are no more pages and no items we already know about\n // that need to be merged in from sub, we're \"synced\"\n const isSynced = messageQueue.length === 0 && (nextToken === null || nextToken === undefined);\n subscriber.next({\n items: items,\n isSynced: isSynced\n });\n if (Array.isArray(errors)) for (const error of errors)subscriber.error(error);\n }\n // play through the queue\n if (messageQueue.length > 0) ingestMessages(messageQueue);\n // switch the queue to write directly to the items collection\n receiveMessages = (...messages)=>{\n ingestMessages(messages);\n return items.length;\n };\n })();\n // when subscriber unsubscribes, tear down internal subs\n return ()=>{\n // 1. tear down internal subs\n onCreateSub.unsubscribe();\n onUpdateSub.unsubscribe();\n onDeleteSub.unsubscribe();\n // 2. there is no need to explicitly stop paging. instead, we\n // just check `subscriber.closed` above before fetching each page.\n };\n });\n return observeQuery;\n}\n\n});\nparcelRegister(\"3Ot4Z\", function(module, exports) {\n\n$parcel$export(module.exports, \"resolvePKFields\", () => $632989c53e360370$export$b46c507f59d0394c);\n/**\n * Given a SchemaModel from a ModelIntrospectionSchema, returns the primary key\n * as an array of field names.\n *\n * @param model The model object\n * @returns Array of field names\n */ function $632989c53e360370$export$b46c507f59d0394c(model) {\n const { primaryKeyFieldName: primaryKeyFieldName, sortKeyFieldNames: sortKeyFieldNames } = model.primaryKeyInfo;\n return [\n primaryKeyFieldName,\n ...sortKeyFieldNames\n ];\n}\n\n});\n\nparcelRegister(\"kUVqC\", function(module, exports) {\n\n$parcel$export(module.exports, \"findIndexByFields\", () => $0e7b2bfc69fdf9ec$export$dc565815e1b88e94);\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Iterates through a collection to find a matching item and returns the index.\n *\n * @param needle The item to search for\n * @param haystack The collection to search\n * @param keyFields The fields used to indicate a match\n * @returns Index of `needle` in `haystack`, otherwise -1 if not found.\n */ function $0e7b2bfc69fdf9ec$export$dc565815e1b88e94(needle, haystack, keyFields) {\n const searchObject = Object.fromEntries(keyFields.map((fieldName)=>[\n fieldName,\n needle[fieldName]\n ]));\n for(let i = 0; i < haystack.length; i++){\n if (Object.keys(searchObject).every((k)=>searchObject[k] === haystack[i][k])) return i;\n }\n return -1;\n}\n\n});\n\n\n\n\n\nparcelRegister(\"le7Hi\", function(module, exports) {\n\"use strict\";\nmodule.exports = JSON.parse('{\"aws_project_region\":\"us-east-2\",\"aws_appsync_graphqlEndpoint\":\"https://fdaufhhmbbgtffmis2dsc6seeu.appsync-api.us-east-2.amazonaws.com/graphql\",\"aws_appsync_region\":\"us-east-2\",\"aws_appsync_authenticationType\":\"API_KEY\",\"aws_appsync_apiKey\":\"da2-4ae7twr2xreexlqemqaklhokbe\"}');\n\n});\n\n\n//# sourceMappingURL=index.40c3b1af.js.map\n","import { Amplify, CookieStorage, defaultStorage } from '@aws-amplify/core';\nimport { parseAWSExports } from '@aws-amplify/core/internals/utils';\nimport { cognitoUserPoolsTokenProvider, cognitoCredentialsProvider } from '@aws-amplify/auth/cognito';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst DefaultAmplify = {\n /**\n * Configures Amplify with the {@link resourceConfig} and {@link libraryOptions}.\n *\n * @param resourceConfig The {@link ResourcesConfig} object that is typically imported from the\n * `amplifyconfiguration.json` file. It can also be an object literal created inline when calling `Amplify.configure`.\n * @param libraryOptions The {@link LibraryOptions} additional options for the library.\n *\n * @example\n * import config from './amplifyconfiguration.json';\n *\n * Amplify.configure(config);\n */\n configure(resourceConfig, libraryOptions) {\n let resolvedResourceConfig;\n if (Object.keys(resourceConfig).some(key => key.startsWith('aws_'))) {\n resolvedResourceConfig = parseAWSExports(resourceConfig);\n }\n else {\n resolvedResourceConfig = resourceConfig;\n }\n // If no Auth config is provided, no special handling will be required, configure as is.\n // Otherwise, we can assume an Auth config is provided from here on.\n if (!resolvedResourceConfig.Auth) {\n return Amplify.configure(resolvedResourceConfig, libraryOptions);\n }\n // If Auth options are provided, always just configure as is.\n // Otherwise, we can assume no Auth libraryOptions were provided from here on.\n if (libraryOptions?.Auth) {\n return Amplify.configure(resolvedResourceConfig, libraryOptions);\n }\n // If no Auth libraryOptions were previously configured, then always add default providers.\n if (!Amplify.libraryOptions.Auth) {\n cognitoUserPoolsTokenProvider.setAuthConfig(resolvedResourceConfig.Auth);\n cognitoUserPoolsTokenProvider.setKeyValueStorage(\n // TODO: allow configure with a public interface\n libraryOptions?.ssr\n ? new CookieStorage({ sameSite: 'lax' })\n : defaultStorage);\n return Amplify.configure(resolvedResourceConfig, {\n ...libraryOptions,\n Auth: {\n tokenProvider: cognitoUserPoolsTokenProvider,\n credentialsProvider: cognitoCredentialsProvider,\n },\n });\n }\n // At this point, Auth libraryOptions would have been previously configured and no overriding\n // Auth options were given, so we should preserve the currently configured Auth libraryOptions.\n if (libraryOptions) {\n // If ssr is provided through libraryOptions, we should respect the intentional reconfiguration.\n if (libraryOptions.ssr !== undefined) {\n cognitoUserPoolsTokenProvider.setKeyValueStorage(\n // TODO: allow configure with a public interface\n libraryOptions.ssr\n ? new CookieStorage({ sameSite: 'lax' })\n : defaultStorage);\n }\n return Amplify.configure(resolvedResourceConfig, {\n Auth: Amplify.libraryOptions.Auth,\n ...libraryOptions,\n });\n }\n // Finally, if there were no libraryOptions given at all, we should simply not touch the currently\n // configured libraryOptions.\n Amplify.configure(resolvedResourceConfig);\n },\n /**\n * Returns the {@link ResourcesConfig} object passed in as the `resourceConfig` parameter when calling\n * `Amplify.configure`.\n *\n * @returns An {@link ResourcesConfig} object.\n */\n getConfig() {\n return Amplify.getConfig();\n },\n};\n\nexport { DefaultAmplify };\n//# sourceMappingURL=initSingleton.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify, CookieStorage, defaultStorage, } from '@aws-amplify/core';\nimport { parseAWSExports, } from '@aws-amplify/core/internals/utils';\nimport { cognitoUserPoolsTokenProvider, cognitoCredentialsProvider, } from './auth/cognito';\nexport const DefaultAmplify = {\n /**\n * Configures Amplify with the {@link resourceConfig} and {@link libraryOptions}.\n *\n * @param resourceConfig The {@link ResourcesConfig} object that is typically imported from the\n * `amplifyconfiguration.json` file. It can also be an object literal created inline when calling `Amplify.configure`.\n * @param libraryOptions The {@link LibraryOptions} additional options for the library.\n *\n * @example\n * import config from './amplifyconfiguration.json';\n *\n * Amplify.configure(config);\n */\n configure(resourceConfig, libraryOptions) {\n let resolvedResourceConfig;\n if (Object.keys(resourceConfig).some(key => key.startsWith('aws_'))) {\n resolvedResourceConfig = parseAWSExports(resourceConfig);\n }\n else {\n resolvedResourceConfig = resourceConfig;\n }\n // If no Auth config is provided, no special handling will be required, configure as is.\n // Otherwise, we can assume an Auth config is provided from here on.\n if (!resolvedResourceConfig.Auth) {\n return Amplify.configure(resolvedResourceConfig, libraryOptions);\n }\n // If Auth options are provided, always just configure as is.\n // Otherwise, we can assume no Auth libraryOptions were provided from here on.\n if (libraryOptions?.Auth) {\n return Amplify.configure(resolvedResourceConfig, libraryOptions);\n }\n // If no Auth libraryOptions were previously configured, then always add default providers.\n if (!Amplify.libraryOptions.Auth) {\n cognitoUserPoolsTokenProvider.setAuthConfig(resolvedResourceConfig.Auth);\n cognitoUserPoolsTokenProvider.setKeyValueStorage(\n // TODO: allow configure with a public interface\n libraryOptions?.ssr\n ? new CookieStorage({ sameSite: 'lax' })\n : defaultStorage);\n return Amplify.configure(resolvedResourceConfig, {\n ...libraryOptions,\n Auth: {\n tokenProvider: cognitoUserPoolsTokenProvider,\n credentialsProvider: cognitoCredentialsProvider,\n },\n });\n }\n // At this point, Auth libraryOptions would have been previously configured and no overriding\n // Auth options were given, so we should preserve the currently configured Auth libraryOptions.\n if (libraryOptions) {\n // If ssr is provided through libraryOptions, we should respect the intentional reconfiguration.\n if (libraryOptions.ssr !== undefined) {\n cognitoUserPoolsTokenProvider.setKeyValueStorage(\n // TODO: allow configure with a public interface\n libraryOptions.ssr\n ? new CookieStorage({ sameSite: 'lax' })\n : defaultStorage);\n }\n return Amplify.configure(resolvedResourceConfig, {\n Auth: Amplify.libraryOptions.Auth,\n ...libraryOptions,\n });\n }\n // Finally, if there were no libraryOptions given at all, we should simply not touch the currently\n // configured libraryOptions.\n Amplify.configure(resolvedResourceConfig);\n },\n /**\n * Returns the {@link ResourcesConfig} object passed in as the `resourceConfig` parameter when calling\n * `Amplify.configure`.\n *\n * @returns An {@link ResourcesConfig} object.\n */\n getConfig() {\n return Amplify.getConfig();\n },\n};\n","import { AuthClass } from './Auth/index.mjs';\nimport { Hub, AMPLIFY_SYMBOL } from '../Hub/index.mjs';\nimport { parseAWSExports } from '../parseAWSExports.mjs';\nimport '../utils/getClientInfo/getClientInfo.mjs';\nimport '../utils/retry/retry.mjs';\nimport { deepFreeze } from '../utils/deepFreeze.mjs';\nimport { ADD_OAUTH_LISTENER } from './constants.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass AmplifyClass {\n constructor() {\n this.oAuthListener = undefined;\n this.resourcesConfig = {};\n this.libraryOptions = {};\n this.Auth = new AuthClass();\n }\n /**\n * Configures Amplify for use with your back-end resources.\n *\n * @remarks\n * This API does not perform any merging of either `resourcesConfig` or `libraryOptions`. The most recently\n * provided values will be used after configuration.\n *\n * @remarks\n * `configure` can be used to specify additional library options where available for supported categories.\n *\n * @param resourceConfig - Back-end resource configuration. Typically provided via the `aws-exports.js` file.\n * @param libraryOptions - Additional options for customizing the behavior of the library.\n */\n configure(resourcesConfig, libraryOptions) {\n let resolvedResourceConfig;\n if (Object.keys(resourcesConfig).some(key => key.startsWith('aws_'))) {\n resolvedResourceConfig = parseAWSExports(resourcesConfig);\n }\n else {\n resolvedResourceConfig = resourcesConfig;\n }\n this.resourcesConfig = resolvedResourceConfig;\n if (libraryOptions) {\n this.libraryOptions = libraryOptions;\n }\n // Make resource config immutable\n this.resourcesConfig = deepFreeze(this.resourcesConfig);\n this.Auth.configure(this.resourcesConfig.Auth, this.libraryOptions.Auth);\n Hub.dispatch('core', {\n event: 'configure',\n data: this.resourcesConfig,\n }, 'Configure', AMPLIFY_SYMBOL);\n this.notifyOAuthListener();\n }\n /**\n * Provides access to the current back-end resource configuration for the Library.\n *\n * @returns Returns the immutable back-end resource configuration.\n */\n getConfig() {\n return this.resourcesConfig;\n }\n /** @internal */\n [ADD_OAUTH_LISTENER](listener) {\n if (this.resourcesConfig.Auth?.Cognito.loginWith?.oauth) {\n // when Amplify has been configured with a valid OAuth config while adding the listener, run it directly\n listener(this.resourcesConfig.Auth?.Cognito);\n }\n else {\n // otherwise register the listener and run it later when Amplify gets configured with a valid oauth config\n this.oAuthListener = listener;\n }\n }\n notifyOAuthListener() {\n if (!this.resourcesConfig.Auth?.Cognito.loginWith?.oauth ||\n !this.oAuthListener) {\n return;\n }\n this.oAuthListener(this.resourcesConfig.Auth?.Cognito);\n // the listener should only be notified once with a valid oauth config\n this.oAuthListener = undefined;\n }\n}\n/**\n * The `Amplify` utility is used to configure the library.\n *\n * @remarks\n * `Amplify` is responsible for orchestrating cross-category communication within the library.\n */\nconst Amplify = new AmplifyClass();\n\nexport { Amplify, AmplifyClass };\n//# sourceMappingURL=Amplify.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthClass } from './Auth';\nimport { Hub, AMPLIFY_SYMBOL } from '../Hub';\nimport { parseAWSExports } from '../parseAWSExports';\nimport { deepFreeze } from '../utils';\nimport { ADD_OAUTH_LISTENER } from './constants';\nexport class AmplifyClass {\n constructor() {\n this.oAuthListener = undefined;\n this.resourcesConfig = {};\n this.libraryOptions = {};\n this.Auth = new AuthClass();\n }\n /**\n * Configures Amplify for use with your back-end resources.\n *\n * @remarks\n * This API does not perform any merging of either `resourcesConfig` or `libraryOptions`. The most recently\n * provided values will be used after configuration.\n *\n * @remarks\n * `configure` can be used to specify additional library options where available for supported categories.\n *\n * @param resourceConfig - Back-end resource configuration. Typically provided via the `aws-exports.js` file.\n * @param libraryOptions - Additional options for customizing the behavior of the library.\n */\n configure(resourcesConfig, libraryOptions) {\n let resolvedResourceConfig;\n if (Object.keys(resourcesConfig).some(key => key.startsWith('aws_'))) {\n resolvedResourceConfig = parseAWSExports(resourcesConfig);\n }\n else {\n resolvedResourceConfig = resourcesConfig;\n }\n this.resourcesConfig = resolvedResourceConfig;\n if (libraryOptions) {\n this.libraryOptions = libraryOptions;\n }\n // Make resource config immutable\n this.resourcesConfig = deepFreeze(this.resourcesConfig);\n this.Auth.configure(this.resourcesConfig.Auth, this.libraryOptions.Auth);\n Hub.dispatch('core', {\n event: 'configure',\n data: this.resourcesConfig,\n }, 'Configure', AMPLIFY_SYMBOL);\n this.notifyOAuthListener();\n }\n /**\n * Provides access to the current back-end resource configuration for the Library.\n *\n * @returns Returns the immutable back-end resource configuration.\n */\n getConfig() {\n return this.resourcesConfig;\n }\n /** @internal */\n [ADD_OAUTH_LISTENER](listener) {\n if (this.resourcesConfig.Auth?.Cognito.loginWith?.oauth) {\n // when Amplify has been configured with a valid OAuth config while adding the listener, run it directly\n listener(this.resourcesConfig.Auth?.Cognito);\n }\n else {\n // otherwise register the listener and run it later when Amplify gets configured with a valid oauth config\n this.oAuthListener = listener;\n }\n }\n notifyOAuthListener() {\n if (!this.resourcesConfig.Auth?.Cognito.loginWith?.oauth ||\n !this.oAuthListener) {\n return;\n }\n this.oAuthListener(this.resourcesConfig.Auth?.Cognito);\n // the listener should only be notified once with a valid oauth config\n this.oAuthListener = undefined;\n }\n}\n/**\n * The `Amplify` utility is used to configure the library.\n *\n * @remarks\n * `Amplify` is responsible for orchestrating cross-category communication within the library.\n */\nexport const Amplify = new AmplifyClass();\n","function isTokenExpired({ expiresAt, clockDrift, }) {\n const currentTime = Date.now();\n return currentTime + clockDrift > expiresAt;\n}\nclass AuthClass {\n constructor() { }\n /**\n * Configure Auth category\n *\n * @internal\n *\n * @param authResourcesConfig - Resources configurations required by Auth providers.\n * @param authOptions - Client options used by library\n *\n * @returns void\n */\n configure(authResourcesConfig, authOptions) {\n this.authConfig = authResourcesConfig;\n this.authOptions = authOptions;\n }\n /**\n * Fetch the auth tokens, and the temporary AWS credentials and identity if they are configured. By default it\n * does not refresh the auth tokens or credentials if they are loaded in storage already. You can force a refresh\n * with `{ forceRefresh: true }` input.\n *\n * @param options - Options configuring the fetch behavior.\n *\n * @returns Promise of current auth session {@link AuthSession}.\n */\n async fetchAuthSession(options = {}) {\n let tokens;\n let credentialsAndIdentityId;\n let userSub;\n // Get tokens will throw if session cannot be refreshed (network or service error) or return null if not available\n tokens = await this.getTokens(options);\n if (tokens) {\n userSub = tokens.accessToken?.payload?.sub;\n // getCredentialsAndIdentityId will throw if cannot get credentials (network or service error)\n credentialsAndIdentityId =\n await this.authOptions?.credentialsProvider?.getCredentialsAndIdentityId({\n authConfig: this.authConfig,\n tokens,\n authenticated: true,\n forceRefresh: options.forceRefresh,\n });\n }\n else {\n // getCredentialsAndIdentityId will throw if cannot get credentials (network or service error)\n credentialsAndIdentityId =\n await this.authOptions?.credentialsProvider?.getCredentialsAndIdentityId({\n authConfig: this.authConfig,\n authenticated: false,\n forceRefresh: options.forceRefresh,\n });\n }\n return {\n tokens,\n credentials: credentialsAndIdentityId?.credentials,\n identityId: credentialsAndIdentityId?.identityId,\n userSub,\n };\n }\n async clearCredentials() {\n if (this.authOptions?.credentialsProvider) {\n return await this.authOptions.credentialsProvider.clearCredentialsAndIdentityId();\n }\n }\n async getTokens(options) {\n return ((await this.authOptions?.tokenProvider?.getTokens(options)) ?? undefined);\n }\n}\n\nexport { AuthClass, isTokenExpired };\n//# sourceMappingURL=index.mjs.map\n","export function isTokenExpired({ expiresAt, clockDrift, }) {\n const currentTime = Date.now();\n return currentTime + clockDrift > expiresAt;\n}\nexport class AuthClass {\n constructor() { }\n /**\n * Configure Auth category\n *\n * @internal\n *\n * @param authResourcesConfig - Resources configurations required by Auth providers.\n * @param authOptions - Client options used by library\n *\n * @returns void\n */\n configure(authResourcesConfig, authOptions) {\n this.authConfig = authResourcesConfig;\n this.authOptions = authOptions;\n }\n /**\n * Fetch the auth tokens, and the temporary AWS credentials and identity if they are configured. By default it\n * does not refresh the auth tokens or credentials if they are loaded in storage already. You can force a refresh\n * with `{ forceRefresh: true }` input.\n *\n * @param options - Options configuring the fetch behavior.\n *\n * @returns Promise of current auth session {@link AuthSession}.\n */\n async fetchAuthSession(options = {}) {\n let tokens;\n let credentialsAndIdentityId;\n let userSub;\n // Get tokens will throw if session cannot be refreshed (network or service error) or return null if not available\n tokens = await this.getTokens(options);\n if (tokens) {\n userSub = tokens.accessToken?.payload?.sub;\n // getCredentialsAndIdentityId will throw if cannot get credentials (network or service error)\n credentialsAndIdentityId =\n await this.authOptions?.credentialsProvider?.getCredentialsAndIdentityId({\n authConfig: this.authConfig,\n tokens,\n authenticated: true,\n forceRefresh: options.forceRefresh,\n });\n }\n else {\n // getCredentialsAndIdentityId will throw if cannot get credentials (network or service error)\n credentialsAndIdentityId =\n await this.authOptions?.credentialsProvider?.getCredentialsAndIdentityId({\n authConfig: this.authConfig,\n authenticated: false,\n forceRefresh: options.forceRefresh,\n });\n }\n return {\n tokens,\n credentials: credentialsAndIdentityId?.credentials,\n identityId: credentialsAndIdentityId?.identityId,\n userSub,\n };\n }\n async clearCredentials() {\n if (this.authOptions?.credentialsProvider) {\n return await this.authOptions.credentialsProvider.clearCredentialsAndIdentityId();\n }\n }\n async getTokens(options) {\n return ((await this.authOptions?.tokenProvider?.getTokens(options)) ?? undefined);\n }\n}\n","import { ConsoleLogger } from '../Logger/ConsoleLogger.mjs';\nimport { NO_HUBCALLBACK_PROVIDED_EXCEPTION } from '../constants.mjs';\nimport { AmplifyError } from '../errors/AmplifyError.mjs';\nimport '../types/errors.mjs';\nimport '../errors/errorHelpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst AMPLIFY_SYMBOL = (typeof Symbol !== 'undefined'\n ? Symbol('amplify_default')\n : '@@amplify_default');\nconst logger = new ConsoleLogger('Hub');\nclass HubClass {\n constructor(name) {\n this.listeners = new Map();\n this.protectedChannels = [\n 'core',\n 'auth',\n 'api',\n 'analytics',\n 'interactions',\n 'pubsub',\n 'storage',\n 'ui',\n 'xr',\n ];\n this.name = name;\n }\n /**\n * Used internally to remove a Hub listener.\n *\n * @remarks\n * This private method is for internal use only. Instead of calling Hub.remove, call the result of Hub.listen.\n */\n _remove(channel, listener) {\n const holder = this.listeners.get(channel);\n if (!holder) {\n logger.warn(`No listeners for ${channel}`);\n return;\n }\n this.listeners.set(channel, [\n ...holder.filter(({ callback }) => callback !== listener),\n ]);\n }\n dispatch(channel, payload, source, ampSymbol) {\n if (typeof channel === 'string' &&\n this.protectedChannels.indexOf(channel) > -1) {\n const hasAccess = ampSymbol === AMPLIFY_SYMBOL;\n if (!hasAccess) {\n logger.warn(`WARNING: ${channel} is protected and dispatching on it can have unintended consequences`);\n }\n }\n const capsule = {\n channel,\n payload: { ...payload },\n source,\n patternInfo: [],\n };\n try {\n this._toListeners(capsule);\n }\n catch (e) {\n logger.error(e);\n }\n }\n listen(channel, callback, listenerName = 'noname') {\n let cb;\n if (typeof callback !== 'function') {\n throw new AmplifyError({\n name: NO_HUBCALLBACK_PROVIDED_EXCEPTION,\n message: 'No callback supplied to Hub',\n });\n }\n else {\n // Needs to be casted as a more generic type\n cb = callback;\n }\n let holder = this.listeners.get(channel);\n if (!holder) {\n holder = [];\n this.listeners.set(channel, holder);\n }\n holder.push({\n name: listenerName,\n callback: cb,\n });\n return () => {\n this._remove(channel, cb);\n };\n }\n _toListeners(capsule) {\n const { channel, payload } = capsule;\n const holder = this.listeners.get(channel);\n if (holder) {\n holder.forEach(listener => {\n logger.debug(`Dispatching to ${channel} with `, payload);\n try {\n listener.callback(capsule);\n }\n catch (e) {\n logger.error(e);\n }\n });\n }\n }\n}\n/*We export a __default__ instance of HubClass to use it as a\npseudo Singleton for the main messaging bus, however you can still create\nyour own instance of HubClass() for a separate \"private bus\" of events.*/\nconst Hub = new HubClass('__default__');\n/**\n * @internal\n *\n * Internal hub used for core Amplify functionality. Not intended for use outside of Amplify.\n *\n */\nconst HubInternal = new HubClass('internal-hub');\n\nexport { AMPLIFY_SYMBOL, Hub, HubClass, HubInternal };\n//# sourceMappingURL=index.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from '../Logger';\nimport { NO_HUBCALLBACK_PROVIDED_EXCEPTION } from '../constants';\nimport { AmplifyError } from '../errors';\nexport const AMPLIFY_SYMBOL = (typeof Symbol !== 'undefined'\n ? Symbol('amplify_default')\n : '@@amplify_default');\nconst logger = new ConsoleLogger('Hub');\nexport class HubClass {\n constructor(name) {\n this.listeners = new Map();\n this.protectedChannels = [\n 'core',\n 'auth',\n 'api',\n 'analytics',\n 'interactions',\n 'pubsub',\n 'storage',\n 'ui',\n 'xr',\n ];\n this.name = name;\n }\n /**\n * Used internally to remove a Hub listener.\n *\n * @remarks\n * This private method is for internal use only. Instead of calling Hub.remove, call the result of Hub.listen.\n */\n _remove(channel, listener) {\n const holder = this.listeners.get(channel);\n if (!holder) {\n logger.warn(`No listeners for ${channel}`);\n return;\n }\n this.listeners.set(channel, [\n ...holder.filter(({ callback }) => callback !== listener),\n ]);\n }\n dispatch(channel, payload, source, ampSymbol) {\n if (typeof channel === 'string' &&\n this.protectedChannels.indexOf(channel) > -1) {\n const hasAccess = ampSymbol === AMPLIFY_SYMBOL;\n if (!hasAccess) {\n logger.warn(`WARNING: ${channel} is protected and dispatching on it can have unintended consequences`);\n }\n }\n const capsule = {\n channel,\n payload: { ...payload },\n source,\n patternInfo: [],\n };\n try {\n this._toListeners(capsule);\n }\n catch (e) {\n logger.error(e);\n }\n }\n listen(channel, callback, listenerName = 'noname') {\n let cb;\n if (typeof callback !== 'function') {\n throw new AmplifyError({\n name: NO_HUBCALLBACK_PROVIDED_EXCEPTION,\n message: 'No callback supplied to Hub',\n });\n }\n else {\n // Needs to be casted as a more generic type\n cb = callback;\n }\n let holder = this.listeners.get(channel);\n if (!holder) {\n holder = [];\n this.listeners.set(channel, holder);\n }\n holder.push({\n name: listenerName,\n callback: cb,\n });\n return () => {\n this._remove(channel, cb);\n };\n }\n _toListeners(capsule) {\n const { channel, payload } = capsule;\n const holder = this.listeners.get(channel);\n if (holder) {\n holder.forEach(listener => {\n logger.debug(`Dispatching to ${channel} with `, payload);\n try {\n listener.callback(capsule);\n }\n catch (e) {\n logger.error(e);\n }\n });\n }\n }\n}\n/*We export a __default__ instance of HubClass to use it as a\npseudo Singleton for the main messaging bus, however you can still create\nyour own instance of HubClass() for a separate \"private bus\" of events.*/\nexport const Hub = new HubClass('__default__');\n/**\n * @internal\n *\n * Internal hub used for core Amplify functionality. Not intended for use outside of Amplify.\n *\n */\nexport const HubInternal = new HubClass('internal-hub');\n","import { LogType } from './types.mjs';\nimport { AWS_CLOUDWATCH_CATEGORY } from '../constants.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst LOG_LEVELS = {\n VERBOSE: 1,\n DEBUG: 2,\n INFO: 3,\n WARN: 4,\n ERROR: 5,\n};\n/**\n * Write logs\n * @class Logger\n */\nclass ConsoleLogger {\n /**\n * @constructor\n * @param {string} name - Name of the logger\n */\n constructor(name, level = LogType.WARN) {\n this.name = name;\n this.level = level;\n this._pluggables = [];\n }\n _padding(n) {\n return n < 10 ? '0' + n : '' + n;\n }\n _ts() {\n const dt = new Date();\n return ([this._padding(dt.getMinutes()), this._padding(dt.getSeconds())].join(':') +\n '.' +\n dt.getMilliseconds());\n }\n configure(config) {\n if (!config)\n return this._config;\n this._config = config;\n return this._config;\n }\n /**\n * Write log\n * @method\n * @memeberof Logger\n * @param {LogType|string} type - log type, default INFO\n * @param {string|object} msg - Logging message or object\n */\n _log(type, ...msg) {\n let logger_level_name = this.level;\n if (ConsoleLogger.LOG_LEVEL) {\n logger_level_name = ConsoleLogger.LOG_LEVEL;\n }\n if (typeof window !== 'undefined' && window.LOG_LEVEL) {\n logger_level_name = window.LOG_LEVEL;\n }\n const logger_level = LOG_LEVELS[logger_level_name];\n const type_level = LOG_LEVELS[type];\n if (!(type_level >= logger_level)) {\n // Do nothing if type is not greater than or equal to logger level (handle undefined)\n return;\n }\n let log = console.log.bind(console);\n if (type === LogType.ERROR && console.error) {\n log = console.error.bind(console);\n }\n if (type === LogType.WARN && console.warn) {\n log = console.warn.bind(console);\n }\n const prefix = `[${type}] ${this._ts()} ${this.name}`;\n let message = '';\n if (msg.length === 1 && typeof msg[0] === 'string') {\n message = `${prefix} - ${msg[0]}`;\n log(message);\n }\n else if (msg.length === 1) {\n message = `${prefix} ${msg[0]}`;\n log(prefix, msg[0]);\n }\n else if (typeof msg[0] === 'string') {\n let obj = msg.slice(1);\n if (obj.length === 1) {\n obj = obj[0];\n }\n message = `${prefix} - ${msg[0]} ${obj}`;\n log(`${prefix} - ${msg[0]}`, obj);\n }\n else {\n message = `${prefix} ${msg}`;\n log(prefix, msg);\n }\n for (const plugin of this._pluggables) {\n const logEvent = { message, timestamp: Date.now() };\n plugin.pushLogs([logEvent]);\n }\n }\n /**\n * Write General log. Default to INFO\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n log(...msg) {\n this._log(LogType.INFO, ...msg);\n }\n /**\n * Write INFO log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n info(...msg) {\n this._log(LogType.INFO, ...msg);\n }\n /**\n * Write WARN log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n warn(...msg) {\n this._log(LogType.WARN, ...msg);\n }\n /**\n * Write ERROR log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n error(...msg) {\n this._log(LogType.ERROR, ...msg);\n }\n /**\n * Write DEBUG log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n debug(...msg) {\n this._log(LogType.DEBUG, ...msg);\n }\n /**\n * Write VERBOSE log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n verbose(...msg) {\n this._log(LogType.VERBOSE, ...msg);\n }\n addPluggable(pluggable) {\n if (pluggable && pluggable.getCategoryName() === AWS_CLOUDWATCH_CATEGORY) {\n this._pluggables.push(pluggable);\n pluggable.configure(this._config);\n }\n }\n listPluggables() {\n return this._pluggables;\n }\n}\nConsoleLogger.LOG_LEVEL = null;\n\nexport { ConsoleLogger };\n//# sourceMappingURL=ConsoleLogger.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { LogType } from './types';\nimport { AWS_CLOUDWATCH_CATEGORY } from '../constants';\nconst LOG_LEVELS = {\n VERBOSE: 1,\n DEBUG: 2,\n INFO: 3,\n WARN: 4,\n ERROR: 5,\n};\n/**\n * Write logs\n * @class Logger\n */\nexport class ConsoleLogger {\n /**\n * @constructor\n * @param {string} name - Name of the logger\n */\n constructor(name, level = LogType.WARN) {\n this.name = name;\n this.level = level;\n this._pluggables = [];\n }\n _padding(n) {\n return n < 10 ? '0' + n : '' + n;\n }\n _ts() {\n const dt = new Date();\n return ([this._padding(dt.getMinutes()), this._padding(dt.getSeconds())].join(':') +\n '.' +\n dt.getMilliseconds());\n }\n configure(config) {\n if (!config)\n return this._config;\n this._config = config;\n return this._config;\n }\n /**\n * Write log\n * @method\n * @memeberof Logger\n * @param {LogType|string} type - log type, default INFO\n * @param {string|object} msg - Logging message or object\n */\n _log(type, ...msg) {\n let logger_level_name = this.level;\n if (ConsoleLogger.LOG_LEVEL) {\n logger_level_name = ConsoleLogger.LOG_LEVEL;\n }\n if (typeof window !== 'undefined' && window.LOG_LEVEL) {\n logger_level_name = window.LOG_LEVEL;\n }\n const logger_level = LOG_LEVELS[logger_level_name];\n const type_level = LOG_LEVELS[type];\n if (!(type_level >= logger_level)) {\n // Do nothing if type is not greater than or equal to logger level (handle undefined)\n return;\n }\n let log = console.log.bind(console);\n if (type === LogType.ERROR && console.error) {\n log = console.error.bind(console);\n }\n if (type === LogType.WARN && console.warn) {\n log = console.warn.bind(console);\n }\n const prefix = `[${type}] ${this._ts()} ${this.name}`;\n let message = '';\n if (msg.length === 1 && typeof msg[0] === 'string') {\n message = `${prefix} - ${msg[0]}`;\n log(message);\n }\n else if (msg.length === 1) {\n message = `${prefix} ${msg[0]}`;\n log(prefix, msg[0]);\n }\n else if (typeof msg[0] === 'string') {\n let obj = msg.slice(1);\n if (obj.length === 1) {\n obj = obj[0];\n }\n message = `${prefix} - ${msg[0]} ${obj}`;\n log(`${prefix} - ${msg[0]}`, obj);\n }\n else {\n message = `${prefix} ${msg}`;\n log(prefix, msg);\n }\n for (const plugin of this._pluggables) {\n const logEvent = { message, timestamp: Date.now() };\n plugin.pushLogs([logEvent]);\n }\n }\n /**\n * Write General log. Default to INFO\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n log(...msg) {\n this._log(LogType.INFO, ...msg);\n }\n /**\n * Write INFO log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n info(...msg) {\n this._log(LogType.INFO, ...msg);\n }\n /**\n * Write WARN log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n warn(...msg) {\n this._log(LogType.WARN, ...msg);\n }\n /**\n * Write ERROR log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n error(...msg) {\n this._log(LogType.ERROR, ...msg);\n }\n /**\n * Write DEBUG log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n debug(...msg) {\n this._log(LogType.DEBUG, ...msg);\n }\n /**\n * Write VERBOSE log\n * @method\n * @memeberof Logger\n * @param {string|object} msg - Logging message or object\n */\n verbose(...msg) {\n this._log(LogType.VERBOSE, ...msg);\n }\n addPluggable(pluggable) {\n if (pluggable && pluggable.getCategoryName() === AWS_CLOUDWATCH_CATEGORY) {\n this._pluggables.push(pluggable);\n pluggable.configure(this._config);\n }\n }\n listPluggables() {\n return this._pluggables;\n }\n}\nConsoleLogger.LOG_LEVEL = null;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar LogType;\n(function (LogType) {\n LogType[\"DEBUG\"] = \"DEBUG\";\n LogType[\"ERROR\"] = \"ERROR\";\n LogType[\"INFO\"] = \"INFO\";\n LogType[\"WARN\"] = \"WARN\";\n LogType[\"VERBOSE\"] = \"VERBOSE\";\n})(LogType || (LogType = {}));\n\nexport { LogType };\n//# sourceMappingURL=types.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var LogType;\n(function (LogType) {\n LogType[\"DEBUG\"] = \"DEBUG\";\n LogType[\"ERROR\"] = \"ERROR\";\n LogType[\"INFO\"] = \"INFO\";\n LogType[\"WARN\"] = \"WARN\";\n LogType[\"VERBOSE\"] = \"VERBOSE\";\n})(LogType || (LogType = {}));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Logging constants\nconst AWS_CLOUDWATCH_CATEGORY = 'Logging';\nconst USER_AGENT_HEADER = 'x-amz-user-agent';\n// Error exception code constants\nconst NO_HUBCALLBACK_PROVIDED_EXCEPTION = 'NoHubcallbackProvidedException';\n\nexport { AWS_CLOUDWATCH_CATEGORY, NO_HUBCALLBACK_PROVIDED_EXCEPTION, USER_AGENT_HEADER };\n//# sourceMappingURL=constants.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Logging constants\nexport const AWS_CLOUDWATCH_CATEGORY = 'Logging';\nexport const USER_AGENT_HEADER = 'x-amz-user-agent';\n// Error exception code constants\nexport const NO_HUBCALLBACK_PROVIDED_EXCEPTION = 'NoHubcallbackProvidedException';\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass AmplifyError extends Error {\n /**\n * Constructs an AmplifyError.\n *\n * @param message text that describes the main problem.\n * @param underlyingError the underlying cause of the error.\n * @param recoverySuggestion suggestion to recover from the error.\n *\n */\n constructor({ message, name, recoverySuggestion, underlyingError, }) {\n super(message);\n this.name = name;\n this.underlyingError = underlyingError;\n this.recoverySuggestion = recoverySuggestion;\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = AmplifyError;\n Object.setPrototypeOf(this, AmplifyError.prototype);\n }\n}\n\nexport { AmplifyError };\n//# sourceMappingURL=AmplifyError.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport class AmplifyError extends Error {\n /**\n * Constructs an AmplifyError.\n *\n * @param message text that describes the main problem.\n * @param underlyingError the underlying cause of the error.\n * @param recoverySuggestion suggestion to recover from the error.\n *\n */\n constructor({ message, name, recoverySuggestion, underlyingError, }) {\n super(message);\n this.name = name;\n this.underlyingError = underlyingError;\n this.recoverySuggestion = recoverySuggestion;\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = AmplifyError;\n Object.setPrototypeOf(this, AmplifyError.prototype);\n }\n}\n","import { ConsoleLogger } from './Logger/ConsoleLogger.mjs';\nimport { AmplifyError } from './errors/AmplifyError.mjs';\nimport './types/errors.mjs';\nimport './errors/errorHelpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst logger = new ConsoleLogger('parseAWSExports');\nconst authTypeMapping = {\n API_KEY: 'apiKey',\n AWS_IAM: 'iam',\n AMAZON_COGNITO_USER_POOLS: 'userPool',\n OPENID_CONNECT: 'oidc',\n NONE: 'none',\n AWS_LAMBDA: 'lambda',\n // `LAMBDA` is an incorrect value that was added during the v6 rewrite.\n // Keeping it as a valid value until v7 to prevent breaking customers who might\n // be relying on it as a workaround.\n // ref: https://github.com/aws-amplify/amplify-js/pull/12922\n // TODO: @v7 remove next line\n LAMBDA: 'lambda',\n};\n/**\n * Converts the object imported from `aws-exports.js` or `amplifyconfiguration.json` files generated by\n * the Amplify CLI into an object that conforms to the {@link ResourcesConfig}.\n *\n * @param config A configuration object imported from `aws-exports.js` or `amplifyconfiguration.json`.\n *\n * @returns An object that conforms to the {@link ResourcesConfig} .\n */\nconst parseAWSExports = (config = {}) => {\n if (!Object.prototype.hasOwnProperty.call(config, 'aws_project_region')) {\n throw new AmplifyError({\n name: 'InvalidParameterException',\n message: 'Invalid config parameter.',\n recoverySuggestion: 'Ensure passing the config object imported from `amplifyconfiguration.json`.',\n });\n }\n const { aws_appsync_apiKey, aws_appsync_authenticationType, aws_appsync_graphqlEndpoint, aws_appsync_region, aws_bots_config, aws_cognito_identity_pool_id, aws_cognito_sign_up_verification_method, aws_cognito_mfa_configuration, aws_cognito_mfa_types, aws_cognito_password_protection_settings, aws_cognito_verification_mechanisms, aws_cognito_signup_attributes, aws_cognito_social_providers, aws_cognito_username_attributes, aws_mandatory_sign_in, aws_mobile_analytics_app_id, aws_mobile_analytics_app_region, aws_user_files_s3_bucket, aws_user_files_s3_bucket_region, aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing, aws_user_pools_id, aws_user_pools_web_client_id, geo, oauth, predictions, aws_cloud_logic_custom, Notifications, modelIntrospection, } = config;\n const amplifyConfig = {};\n // Analytics\n if (aws_mobile_analytics_app_id) {\n amplifyConfig.Analytics = {\n Pinpoint: {\n appId: aws_mobile_analytics_app_id,\n region: aws_mobile_analytics_app_region,\n },\n };\n }\n // Notifications\n const { InAppMessaging, Push } = Notifications ?? {};\n if (InAppMessaging?.AWSPinpoint || Push?.AWSPinpoint) {\n if (InAppMessaging?.AWSPinpoint) {\n const { appId, region } = InAppMessaging.AWSPinpoint;\n amplifyConfig.Notifications = {\n InAppMessaging: {\n Pinpoint: {\n appId,\n region,\n },\n },\n };\n }\n if (Push?.AWSPinpoint) {\n const { appId, region } = Push.AWSPinpoint;\n amplifyConfig.Notifications = {\n ...amplifyConfig.Notifications,\n PushNotification: {\n Pinpoint: {\n appId,\n region,\n },\n },\n };\n }\n }\n // Interactions\n if (Array.isArray(aws_bots_config)) {\n amplifyConfig.Interactions = {\n LexV1: Object.fromEntries(aws_bots_config.map(bot => [bot.name, bot])),\n };\n }\n // API\n if (aws_appsync_graphqlEndpoint) {\n const defaultAuthMode = authTypeMapping[aws_appsync_authenticationType];\n if (!defaultAuthMode) {\n logger.debug(`Invalid authentication type ${aws_appsync_authenticationType}. Falling back to IAM.`);\n }\n amplifyConfig.API = {\n GraphQL: {\n endpoint: aws_appsync_graphqlEndpoint,\n apiKey: aws_appsync_apiKey,\n region: aws_appsync_region,\n defaultAuthMode: defaultAuthMode ?? 'iam',\n },\n };\n if (modelIntrospection) {\n amplifyConfig.API.GraphQL.modelIntrospection = modelIntrospection;\n }\n }\n // Auth\n const mfaConfig = aws_cognito_mfa_configuration\n ? {\n status: aws_cognito_mfa_configuration &&\n aws_cognito_mfa_configuration.toLowerCase(),\n totpEnabled: aws_cognito_mfa_types?.includes('TOTP') ?? false,\n smsEnabled: aws_cognito_mfa_types?.includes('SMS') ?? false,\n }\n : undefined;\n const passwordFormatConfig = aws_cognito_password_protection_settings\n ? {\n minLength: aws_cognito_password_protection_settings.passwordPolicyMinLength,\n requireLowercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_LOWERCASE') ?? false,\n requireUppercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_UPPERCASE') ?? false,\n requireNumbers: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_NUMBERS') ?? false,\n requireSpecialCharacters: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_SYMBOLS') ?? false,\n }\n : undefined;\n const mergedUserAttributes = Array.from(new Set([\n ...(aws_cognito_verification_mechanisms ?? []),\n ...(aws_cognito_signup_attributes ?? []),\n ]));\n const userAttributes = mergedUserAttributes.reduce((attributes, key) => ({\n ...attributes,\n // All user attributes generated by the CLI are required\n [key.toLowerCase()]: { required: true },\n }), {});\n const loginWithEmailEnabled = aws_cognito_username_attributes?.includes('EMAIL') ?? false;\n const loginWithPhoneEnabled = aws_cognito_username_attributes?.includes('PHONE_NUMBER') ?? false;\n if (aws_cognito_identity_pool_id || aws_user_pools_id) {\n amplifyConfig.Auth = {\n Cognito: {\n identityPoolId: aws_cognito_identity_pool_id,\n allowGuestAccess: aws_mandatory_sign_in !== 'enable',\n signUpVerificationMethod: aws_cognito_sign_up_verification_method,\n userAttributes,\n userPoolClientId: aws_user_pools_web_client_id,\n userPoolId: aws_user_pools_id,\n mfa: mfaConfig,\n passwordFormat: passwordFormatConfig,\n loginWith: {\n username: loginWithEmailEnabled || loginWithPhoneEnabled ? false : true,\n email: loginWithEmailEnabled,\n phone: loginWithPhoneEnabled,\n },\n },\n };\n }\n const hasOAuthConfig = oauth ? Object.keys(oauth).length > 0 : false;\n const hasSocialProviderConfig = aws_cognito_social_providers\n ? aws_cognito_social_providers.length > 0\n : false;\n if (amplifyConfig.Auth && hasOAuthConfig) {\n amplifyConfig.Auth.Cognito.loginWith = {\n ...amplifyConfig.Auth.Cognito.loginWith,\n oauth: {\n ...getOAuthConfig(oauth),\n ...(hasSocialProviderConfig && {\n providers: parseSocialProviders(aws_cognito_social_providers),\n }),\n },\n };\n }\n // Storage\n if (aws_user_files_s3_bucket) {\n amplifyConfig.Storage = {\n S3: {\n bucket: aws_user_files_s3_bucket,\n region: aws_user_files_s3_bucket_region,\n dangerouslyConnectToHttpEndpointForTesting: aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing,\n },\n };\n }\n // Geo\n if (geo) {\n const { amazon_location_service } = geo;\n amplifyConfig.Geo = amazon_location_service\n ? {\n LocationService: {\n ...amazon_location_service,\n searchIndices: amazon_location_service.search_indices,\n region: amazon_location_service.region,\n },\n }\n : { ...geo };\n }\n // REST API\n if (aws_cloud_logic_custom) {\n amplifyConfig.API = {\n ...amplifyConfig.API,\n REST: aws_cloud_logic_custom.reduce((acc, api) => {\n const { name, endpoint, region, service } = api;\n return {\n ...acc,\n [name]: {\n endpoint,\n ...(service ? { service } : undefined),\n ...(region ? { region } : undefined),\n },\n };\n }, {}),\n };\n }\n // Predictions\n if (predictions) {\n // map VoiceId from speechGenerator defaults to voiceId\n const { VoiceId: voiceId } = predictions?.convert?.speechGenerator?.defaults ?? {};\n amplifyConfig.Predictions = voiceId\n ? {\n ...predictions,\n convert: {\n ...predictions.convert,\n speechGenerator: {\n ...predictions.convert.speechGenerator,\n defaults: { voiceId },\n },\n },\n }\n : predictions;\n }\n return amplifyConfig;\n};\nconst getRedirectUrl = (redirectStr) => redirectStr?.split(',') ?? [];\nconst getOAuthConfig = ({ domain, scope, redirectSignIn, redirectSignOut, responseType, }) => ({\n domain,\n scopes: scope,\n redirectSignIn: getRedirectUrl(redirectSignIn),\n redirectSignOut: getRedirectUrl(redirectSignOut),\n responseType,\n});\nconst parseSocialProviders = (aws_cognito_social_providers) => {\n return aws_cognito_social_providers.map((provider) => {\n const updatedProvider = provider.toLowerCase();\n return updatedProvider.charAt(0).toUpperCase() + updatedProvider.slice(1);\n });\n};\n\nexport { parseAWSExports };\n//# sourceMappingURL=parseAWSExports.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger } from './Logger';\nimport { AmplifyError } from './errors';\nconst logger = new ConsoleLogger('parseAWSExports');\nconst authTypeMapping = {\n API_KEY: 'apiKey',\n AWS_IAM: 'iam',\n AMAZON_COGNITO_USER_POOLS: 'userPool',\n OPENID_CONNECT: 'oidc',\n NONE: 'none',\n AWS_LAMBDA: 'lambda',\n // `LAMBDA` is an incorrect value that was added during the v6 rewrite.\n // Keeping it as a valid value until v7 to prevent breaking customers who might\n // be relying on it as a workaround.\n // ref: https://github.com/aws-amplify/amplify-js/pull/12922\n // TODO: @v7 remove next line\n LAMBDA: 'lambda',\n};\n/**\n * Converts the object imported from `aws-exports.js` or `amplifyconfiguration.json` files generated by\n * the Amplify CLI into an object that conforms to the {@link ResourcesConfig}.\n *\n * @param config A configuration object imported from `aws-exports.js` or `amplifyconfiguration.json`.\n *\n * @returns An object that conforms to the {@link ResourcesConfig} .\n */\nexport const parseAWSExports = (config = {}) => {\n if (!Object.prototype.hasOwnProperty.call(config, 'aws_project_region')) {\n throw new AmplifyError({\n name: 'InvalidParameterException',\n message: 'Invalid config parameter.',\n recoverySuggestion: 'Ensure passing the config object imported from `amplifyconfiguration.json`.',\n });\n }\n const { aws_appsync_apiKey, aws_appsync_authenticationType, aws_appsync_graphqlEndpoint, aws_appsync_region, aws_bots_config, aws_cognito_identity_pool_id, aws_cognito_sign_up_verification_method, aws_cognito_mfa_configuration, aws_cognito_mfa_types, aws_cognito_password_protection_settings, aws_cognito_verification_mechanisms, aws_cognito_signup_attributes, aws_cognito_social_providers, aws_cognito_username_attributes, aws_mandatory_sign_in, aws_mobile_analytics_app_id, aws_mobile_analytics_app_region, aws_user_files_s3_bucket, aws_user_files_s3_bucket_region, aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing, aws_user_pools_id, aws_user_pools_web_client_id, geo, oauth, predictions, aws_cloud_logic_custom, Notifications, modelIntrospection, } = config;\n const amplifyConfig = {};\n // Analytics\n if (aws_mobile_analytics_app_id) {\n amplifyConfig.Analytics = {\n Pinpoint: {\n appId: aws_mobile_analytics_app_id,\n region: aws_mobile_analytics_app_region,\n },\n };\n }\n // Notifications\n const { InAppMessaging, Push } = Notifications ?? {};\n if (InAppMessaging?.AWSPinpoint || Push?.AWSPinpoint) {\n if (InAppMessaging?.AWSPinpoint) {\n const { appId, region } = InAppMessaging.AWSPinpoint;\n amplifyConfig.Notifications = {\n InAppMessaging: {\n Pinpoint: {\n appId,\n region,\n },\n },\n };\n }\n if (Push?.AWSPinpoint) {\n const { appId, region } = Push.AWSPinpoint;\n amplifyConfig.Notifications = {\n ...amplifyConfig.Notifications,\n PushNotification: {\n Pinpoint: {\n appId,\n region,\n },\n },\n };\n }\n }\n // Interactions\n if (Array.isArray(aws_bots_config)) {\n amplifyConfig.Interactions = {\n LexV1: Object.fromEntries(aws_bots_config.map(bot => [bot.name, bot])),\n };\n }\n // API\n if (aws_appsync_graphqlEndpoint) {\n const defaultAuthMode = authTypeMapping[aws_appsync_authenticationType];\n if (!defaultAuthMode) {\n logger.debug(`Invalid authentication type ${aws_appsync_authenticationType}. Falling back to IAM.`);\n }\n amplifyConfig.API = {\n GraphQL: {\n endpoint: aws_appsync_graphqlEndpoint,\n apiKey: aws_appsync_apiKey,\n region: aws_appsync_region,\n defaultAuthMode: defaultAuthMode ?? 'iam',\n },\n };\n if (modelIntrospection) {\n amplifyConfig.API.GraphQL.modelIntrospection = modelIntrospection;\n }\n }\n // Auth\n const mfaConfig = aws_cognito_mfa_configuration\n ? {\n status: aws_cognito_mfa_configuration &&\n aws_cognito_mfa_configuration.toLowerCase(),\n totpEnabled: aws_cognito_mfa_types?.includes('TOTP') ?? false,\n smsEnabled: aws_cognito_mfa_types?.includes('SMS') ?? false,\n }\n : undefined;\n const passwordFormatConfig = aws_cognito_password_protection_settings\n ? {\n minLength: aws_cognito_password_protection_settings.passwordPolicyMinLength,\n requireLowercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_LOWERCASE') ?? false,\n requireUppercase: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_UPPERCASE') ?? false,\n requireNumbers: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_NUMBERS') ?? false,\n requireSpecialCharacters: aws_cognito_password_protection_settings.passwordPolicyCharacters?.includes('REQUIRES_SYMBOLS') ?? false,\n }\n : undefined;\n const mergedUserAttributes = Array.from(new Set([\n ...(aws_cognito_verification_mechanisms ?? []),\n ...(aws_cognito_signup_attributes ?? []),\n ]));\n const userAttributes = mergedUserAttributes.reduce((attributes, key) => ({\n ...attributes,\n // All user attributes generated by the CLI are required\n [key.toLowerCase()]: { required: true },\n }), {});\n const loginWithEmailEnabled = aws_cognito_username_attributes?.includes('EMAIL') ?? false;\n const loginWithPhoneEnabled = aws_cognito_username_attributes?.includes('PHONE_NUMBER') ?? false;\n if (aws_cognito_identity_pool_id || aws_user_pools_id) {\n amplifyConfig.Auth = {\n Cognito: {\n identityPoolId: aws_cognito_identity_pool_id,\n allowGuestAccess: aws_mandatory_sign_in !== 'enable',\n signUpVerificationMethod: aws_cognito_sign_up_verification_method,\n userAttributes,\n userPoolClientId: aws_user_pools_web_client_id,\n userPoolId: aws_user_pools_id,\n mfa: mfaConfig,\n passwordFormat: passwordFormatConfig,\n loginWith: {\n username: loginWithEmailEnabled || loginWithPhoneEnabled ? false : true,\n email: loginWithEmailEnabled,\n phone: loginWithPhoneEnabled,\n },\n },\n };\n }\n const hasOAuthConfig = oauth ? Object.keys(oauth).length > 0 : false;\n const hasSocialProviderConfig = aws_cognito_social_providers\n ? aws_cognito_social_providers.length > 0\n : false;\n if (amplifyConfig.Auth && hasOAuthConfig) {\n amplifyConfig.Auth.Cognito.loginWith = {\n ...amplifyConfig.Auth.Cognito.loginWith,\n oauth: {\n ...getOAuthConfig(oauth),\n ...(hasSocialProviderConfig && {\n providers: parseSocialProviders(aws_cognito_social_providers),\n }),\n },\n };\n }\n // Storage\n if (aws_user_files_s3_bucket) {\n amplifyConfig.Storage = {\n S3: {\n bucket: aws_user_files_s3_bucket,\n region: aws_user_files_s3_bucket_region,\n dangerouslyConnectToHttpEndpointForTesting: aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing,\n },\n };\n }\n // Geo\n if (geo) {\n const { amazon_location_service } = geo;\n amplifyConfig.Geo = amazon_location_service\n ? {\n LocationService: {\n ...amazon_location_service,\n searchIndices: amazon_location_service.search_indices,\n region: amazon_location_service.region,\n },\n }\n : { ...geo };\n }\n // REST API\n if (aws_cloud_logic_custom) {\n amplifyConfig.API = {\n ...amplifyConfig.API,\n REST: aws_cloud_logic_custom.reduce((acc, api) => {\n const { name, endpoint, region, service } = api;\n return {\n ...acc,\n [name]: {\n endpoint,\n ...(service ? { service } : undefined),\n ...(region ? { region } : undefined),\n },\n };\n }, {}),\n };\n }\n // Predictions\n if (predictions) {\n // map VoiceId from speechGenerator defaults to voiceId\n const { VoiceId: voiceId } = predictions?.convert?.speechGenerator?.defaults ?? {};\n amplifyConfig.Predictions = voiceId\n ? {\n ...predictions,\n convert: {\n ...predictions.convert,\n speechGenerator: {\n ...predictions.convert.speechGenerator,\n defaults: { voiceId },\n },\n },\n }\n : predictions;\n }\n return amplifyConfig;\n};\nconst getRedirectUrl = (redirectStr) => redirectStr?.split(',') ?? [];\nconst getOAuthConfig = ({ domain, scope, redirectSignIn, redirectSignOut, responseType, }) => ({\n domain,\n scopes: scope,\n redirectSignIn: getRedirectUrl(redirectSignIn),\n redirectSignOut: getRedirectUrl(redirectSignOut),\n responseType,\n});\nconst parseSocialProviders = (aws_cognito_social_providers) => {\n return aws_cognito_social_providers.map((provider) => {\n const updatedProvider = provider.toLowerCase();\n return updatedProvider.charAt(0).toUpperCase() + updatedProvider.slice(1);\n });\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst deepFreeze = (object) => {\n const propNames = Reflect.ownKeys(object);\n for (const name of propNames) {\n const value = object[name];\n if ((value && typeof value === 'object') || typeof value === 'function') {\n deepFreeze(value);\n }\n }\n return Object.freeze(object);\n};\n\nexport { deepFreeze };\n//# sourceMappingURL=deepFreeze.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const deepFreeze = (object) => {\n const propNames = Reflect.ownKeys(object);\n for (const name of propNames) {\n const value = object[name];\n if ((value && typeof value === 'object') || typeof value === 'function') {\n deepFreeze(value);\n }\n }\n return Object.freeze(object);\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst ADD_OAUTH_LISTENER = Symbol('oauth-listener');\n\nexport { ADD_OAUTH_LISTENER };\n//# sourceMappingURL=constants.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const ADD_OAUTH_LISTENER = Symbol('oauth-listener');\n","import JsCookie from 'js-cookie';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass CookieStorage {\n constructor(data = {}) {\n const { path, domain, expires, sameSite, secure } = data;\n this.domain = domain;\n this.path = path ? path : '/';\n this.expires = data.hasOwnProperty('expires') ? expires : 365;\n this.secure = data.hasOwnProperty('secure') ? secure : true;\n if (data.hasOwnProperty('sameSite')) {\n if (!sameSite || !['strict', 'lax', 'none'].includes(sameSite)) {\n throw new Error('The sameSite value of cookieStorage must be \"lax\", \"strict\" or \"none\".');\n }\n if (sameSite === 'none' && !this.secure) {\n throw new Error('sameSite = None requires the Secure attribute in latest browser versions.');\n }\n this.sameSite = sameSite;\n }\n }\n async setItem(key, value) {\n JsCookie.set(key, value, this.getData());\n }\n async getItem(key) {\n const item = JsCookie.get(key);\n return item ?? null;\n }\n async removeItem(key) {\n JsCookie.remove(key, this.getData());\n }\n async clear() {\n const cookie = JsCookie.get();\n const promises = Object.keys(cookie).map(key => this.removeItem(key));\n await Promise.all(promises);\n }\n getData() {\n return {\n path: this.path,\n expires: this.expires,\n domain: this.domain,\n secure: this.secure,\n ...(this.sameSite && { sameSite: this.sameSite }),\n };\n }\n}\n\nexport { CookieStorage };\n//# sourceMappingURL=CookieStorage.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport JsCookie from 'js-cookie';\nexport class CookieStorage {\n constructor(data = {}) {\n const { path, domain, expires, sameSite, secure } = data;\n this.domain = domain;\n this.path = path ? path : '/';\n this.expires = data.hasOwnProperty('expires') ? expires : 365;\n this.secure = data.hasOwnProperty('secure') ? secure : true;\n if (data.hasOwnProperty('sameSite')) {\n if (!sameSite || !['strict', 'lax', 'none'].includes(sameSite)) {\n throw new Error('The sameSite value of cookieStorage must be \"lax\", \"strict\" or \"none\".');\n }\n if (sameSite === 'none' && !this.secure) {\n throw new Error('sameSite = None requires the Secure attribute in latest browser versions.');\n }\n this.sameSite = sameSite;\n }\n }\n async setItem(key, value) {\n JsCookie.set(key, value, this.getData());\n }\n async getItem(key) {\n const item = JsCookie.get(key);\n return item ?? null;\n }\n async removeItem(key) {\n JsCookie.remove(key, this.getData());\n }\n async clear() {\n const cookie = JsCookie.get();\n const promises = Object.keys(cookie).map(key => this.removeItem(key));\n await Promise.all(promises);\n }\n getData() {\n return {\n path: this.path,\n expires: this.expires,\n domain: this.domain,\n secure: this.secure,\n ...(this.sameSite && { sameSite: this.sameSite }),\n };\n }\n}\n","/*! js-cookie v3.0.5 | MIT */\n;\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (function () {\n var current = global.Cookies;\n var exports = global.Cookies = factory();\n exports.noConflict = function () { global.Cookies = current; return exports; };\n })());\n})(this, (function () { 'use strict';\n\n /* eslint-disable no-var */\n function assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n }\n /* eslint-enable no-var */\n\n /* eslint-disable no-var */\n var defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n };\n /* eslint-enable no-var */\n\n /* eslint-disable no-var */\n\n function init (converter, defaultAttributes) {\n function set (name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get (name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n\n if (name === found) {\n break\n }\n } catch (e) {}\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n }\n\n var api = init(defaultConverter, { path: '/' });\n /* eslint-enable no-var */\n\n return api;\n\n}));\n","import { DefaultStorage } from './DefaultStorage.mjs';\nimport { InMemoryStorage } from './InMemoryStorage.mjs';\nimport { KeyValueStorage } from './KeyValueStorage.mjs';\nimport { SessionStorage } from './SessionStorage.mjs';\nexport { CookieStorage } from './CookieStorage.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst defaultStorage = new DefaultStorage();\nconst sessionStorage = new SessionStorage();\nconst sharedInMemoryStorage = new KeyValueStorage(new InMemoryStorage());\n\nexport { defaultStorage, sessionStorage, sharedInMemoryStorage };\n//# sourceMappingURL=index.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { DefaultStorage } from './DefaultStorage';\nimport { InMemoryStorage } from './InMemoryStorage';\nimport { KeyValueStorage } from './KeyValueStorage';\nimport { SessionStorage } from './SessionStorage';\nexport { CookieStorage } from './CookieStorage';\nexport const defaultStorage = new DefaultStorage();\nexport const sessionStorage = new SessionStorage();\nexport const sharedInMemoryStorage = new KeyValueStorage(new InMemoryStorage());\n","import { KeyValueStorage } from './KeyValueStorage.mjs';\nimport { getLocalStorageWithFallback } from './utils.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */\nclass DefaultStorage extends KeyValueStorage {\n constructor() {\n super(getLocalStorageWithFallback());\n }\n}\n\nexport { DefaultStorage };\n//# sourceMappingURL=DefaultStorage.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { KeyValueStorage } from './KeyValueStorage';\nimport { getLocalStorageWithFallback } from './utils';\n/**\n * @internal\n */\nexport class DefaultStorage extends KeyValueStorage {\n constructor() {\n super(getLocalStorageWithFallback());\n }\n}\n","import { PlatformNotSupportedError } from '../errors/PlatformNotSupportedError.mjs';\nimport '../errors/errorHelpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */\nclass KeyValueStorage {\n constructor(storage) {\n this.storage = storage;\n }\n /**\n * This is used to set a specific item in storage\n * @param {string} key - the key for the item\n * @param {object} value - the value\n * @returns {string} value that was set\n */\n async setItem(key, value) {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n this.storage.setItem(key, value);\n }\n /**\n * This is used to get a specific key from storage\n * @param {string} key - the key for the item\n * This is used to clear the storage\n * @returns {string} the data item\n */\n async getItem(key) {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n return this.storage.getItem(key);\n }\n /**\n * This is used to remove an item from storage\n * @param {string} key - the key being set\n * @returns {string} value - value that was deleted\n */\n async removeItem(key) {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n this.storage.removeItem(key);\n }\n /**\n * This is used to clear the storage\n * @returns {string} nothing\n */\n async clear() {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n this.storage.clear();\n }\n}\n\nexport { KeyValueStorage };\n//# sourceMappingURL=KeyValueStorage.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { PlatformNotSupportedError } from '../errors';\n/**\n * @internal\n */\nexport class KeyValueStorage {\n constructor(storage) {\n this.storage = storage;\n }\n /**\n * This is used to set a specific item in storage\n * @param {string} key - the key for the item\n * @param {object} value - the value\n * @returns {string} value that was set\n */\n async setItem(key, value) {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n this.storage.setItem(key, value);\n }\n /**\n * This is used to get a specific key from storage\n * @param {string} key - the key for the item\n * This is used to clear the storage\n * @returns {string} the data item\n */\n async getItem(key) {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n return this.storage.getItem(key);\n }\n /**\n * This is used to remove an item from storage\n * @param {string} key - the key being set\n * @returns {string} value - value that was deleted\n */\n async removeItem(key) {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n this.storage.removeItem(key);\n }\n /**\n * This is used to clear the storage\n * @returns {string} nothing\n */\n async clear() {\n if (!this.storage)\n throw new PlatformNotSupportedError();\n this.storage.clear();\n }\n}\n","import { AmplifyErrorCode } from '../types/errors.mjs';\nimport { AmplifyError } from './AmplifyError.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass PlatformNotSupportedError extends AmplifyError {\n constructor() {\n super({\n name: AmplifyErrorCode.PlatformNotSupported,\n message: 'Function not supported on current platform',\n });\n }\n}\n\nexport { PlatformNotSupportedError };\n//# sourceMappingURL=PlatformNotSupportedError.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyErrorCode } from '../types';\nimport { AmplifyError } from './AmplifyError';\nexport class PlatformNotSupportedError extends AmplifyError {\n constructor() {\n super({\n name: AmplifyErrorCode.PlatformNotSupported,\n message: 'Function not supported on current platform',\n });\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar AmplifyErrorCode;\n(function (AmplifyErrorCode) {\n AmplifyErrorCode[\"NoEndpointId\"] = \"NoEndpointId\";\n AmplifyErrorCode[\"PlatformNotSupported\"] = \"PlatformNotSupported\";\n AmplifyErrorCode[\"Unknown\"] = \"Unknown\";\n})(AmplifyErrorCode || (AmplifyErrorCode = {}));\n\nexport { AmplifyErrorCode };\n//# sourceMappingURL=errors.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var AmplifyErrorCode;\n(function (AmplifyErrorCode) {\n AmplifyErrorCode[\"NoEndpointId\"] = \"NoEndpointId\";\n AmplifyErrorCode[\"PlatformNotSupported\"] = \"PlatformNotSupported\";\n AmplifyErrorCode[\"Unknown\"] = \"Unknown\";\n})(AmplifyErrorCode || (AmplifyErrorCode = {}));\n","import { InMemoryStorage } from './InMemoryStorage.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n * @returns Either a reference to window.localStorage or an in-memory storage as fallback\n */\nconst getLocalStorageWithFallback = () => typeof window !== 'undefined' && window.localStorage\n ? window.localStorage\n : new InMemoryStorage();\n/**\n * @internal\n * @returns Either a reference to window.sessionStorage or an in-memory storage as fallback\n */\nconst getSessionStorageWithFallback = () => typeof window !== 'undefined' && window.sessionStorage\n ? window.sessionStorage\n : new InMemoryStorage();\n\nexport { getLocalStorageWithFallback, getSessionStorageWithFallback };\n//# sourceMappingURL=utils.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { InMemoryStorage } from './InMemoryStorage';\n/**\n * @internal\n * @returns Either a reference to window.localStorage or an in-memory storage as fallback\n */\nexport const getLocalStorageWithFallback = () => typeof window !== 'undefined' && window.localStorage\n ? window.localStorage\n : new InMemoryStorage();\n/**\n * @internal\n * @returns Either a reference to window.sessionStorage or an in-memory storage as fallback\n */\nexport const getSessionStorageWithFallback = () => typeof window !== 'undefined' && window.sessionStorage\n ? window.sessionStorage\n : new InMemoryStorage();\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */\nclass InMemoryStorage {\n constructor() {\n this.storage = new Map();\n }\n get length() {\n return this.storage.size;\n }\n key(index) {\n if (index > this.length - 1) {\n return null;\n }\n return Array.from(this.storage.keys())[index];\n }\n setItem(key, value) {\n this.storage.set(key, value);\n }\n getItem(key) {\n return this.storage.get(key) ?? null;\n }\n removeItem(key) {\n this.storage.delete(key);\n }\n clear() {\n this.storage.clear();\n }\n}\n\nexport { InMemoryStorage };\n//# sourceMappingURL=InMemoryStorage.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */\nexport class InMemoryStorage {\n constructor() {\n this.storage = new Map();\n }\n get length() {\n return this.storage.size;\n }\n key(index) {\n if (index > this.length - 1) {\n return null;\n }\n return Array.from(this.storage.keys())[index];\n }\n setItem(key, value) {\n this.storage.set(key, value);\n }\n getItem(key) {\n return this.storage.get(key) ?? null;\n }\n removeItem(key) {\n this.storage.delete(key);\n }\n clear() {\n this.storage.clear();\n }\n}\n","import { KeyValueStorage } from './KeyValueStorage.mjs';\nimport { getSessionStorageWithFallback } from './utils.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @internal\n */\nclass SessionStorage extends KeyValueStorage {\n constructor() {\n super(getSessionStorageWithFallback());\n }\n}\n\nexport { SessionStorage };\n//# sourceMappingURL=SessionStorage.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { KeyValueStorage } from './KeyValueStorage';\nimport { getSessionStorageWithFallback } from './utils';\n/**\n * @internal\n */\nexport class SessionStorage extends KeyValueStorage {\n constructor() {\n super(getSessionStorageWithFallback());\n }\n}\n","import { DefaultIdentityIdStore } from './IdentityIdStore.mjs';\nimport { CognitoAWSCredentialsAndIdentityIdProvider } from './credentialsProvider.mjs';\nimport { defaultStorage } from '@aws-amplify/core';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Cognito specific implmentation of the CredentialsProvider interface\n * that manages setting and getting of AWS Credentials.\n *\n * @throws configuration expections: {@link InvalidIdentityPoolIdException }\n * - Auth errors that may arise from misconfiguration.\n * @throws service expections: {@link GetCredentialsForIdentityException}, {@link GetIdException}\n *\n */\nconst cognitoCredentialsProvider = new CognitoAWSCredentialsAndIdentityIdProvider(new DefaultIdentityIdStore(defaultStorage));\n\nexport { CognitoAWSCredentialsAndIdentityIdProvider, DefaultIdentityIdStore, cognitoCredentialsProvider };\n//# sourceMappingURL=index.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { DefaultIdentityIdStore } from './IdentityIdStore';\nimport { CognitoAWSCredentialsAndIdentityIdProvider } from './credentialsProvider';\nimport { defaultStorage } from '@aws-amplify/core';\n/**\n * Cognito specific implmentation of the CredentialsProvider interface\n * that manages setting and getting of AWS Credentials.\n *\n * @throws configuration expections: {@link InvalidIdentityPoolIdException }\n * - Auth errors that may arise from misconfiguration.\n * @throws service expections: {@link GetCredentialsForIdentityException}, {@link GetIdException}\n *\n */\nexport const cognitoCredentialsProvider = new CognitoAWSCredentialsAndIdentityIdProvider(new DefaultIdentityIdStore(defaultStorage));\nexport { CognitoAWSCredentialsAndIdentityIdProvider, DefaultIdentityIdStore };\n","import { ConsoleLogger } from '@aws-amplify/core';\nimport { assertIdentityPoolIdConfig } from '@aws-amplify/core/internals/utils';\nimport { IdentityIdStorageKeys } from './types.mjs';\nimport { getAuthStorageKeys } from '../tokenProvider/TokenStore.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst logger = new ConsoleLogger('DefaultIdentityIdStore');\nclass DefaultIdentityIdStore {\n setAuthConfig(authConfigParam) {\n assertIdentityPoolIdConfig(authConfigParam.Cognito);\n this.authConfig = authConfigParam;\n this._authKeys = createKeysForAuthStorage('Cognito', authConfigParam.Cognito.identityPoolId);\n return;\n }\n constructor(keyValueStorage) {\n this._authKeys = {};\n this.keyValueStorage = keyValueStorage;\n }\n async loadIdentityId() {\n assertIdentityPoolIdConfig(this.authConfig?.Cognito);\n try {\n if (!!this._primaryIdentityId) {\n return {\n id: this._primaryIdentityId,\n type: 'primary',\n };\n }\n else {\n const storedIdentityId = await this.keyValueStorage.getItem(this._authKeys.identityId);\n if (!!storedIdentityId) {\n return {\n id: storedIdentityId,\n type: 'guest',\n };\n }\n return null;\n }\n }\n catch (err) {\n logger.log('Error getting stored IdentityId.', err);\n return null;\n }\n }\n async storeIdentityId(identity) {\n assertIdentityPoolIdConfig(this.authConfig?.Cognito);\n if (identity.type === 'guest') {\n this.keyValueStorage.setItem(this._authKeys.identityId, identity.id);\n // Clear in-memory storage of primary identityId\n this._primaryIdentityId = undefined;\n }\n else {\n this._primaryIdentityId = identity.id;\n // Clear locally stored guest id\n this.keyValueStorage.removeItem(this._authKeys.identityId);\n }\n }\n async clearIdentityId() {\n this._primaryIdentityId = undefined;\n await this.keyValueStorage.removeItem(this._authKeys.identityId);\n }\n}\nconst createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(IdentityIdStorageKeys)(`com.amplify.${provider}`, identifier);\n};\n\nexport { DefaultIdentityIdStore };\n//# sourceMappingURL=IdentityIdStore.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { ConsoleLogger, } from '@aws-amplify/core';\nimport { assertIdentityPoolIdConfig } from '@aws-amplify/core/internals/utils';\nimport { IdentityIdStorageKeys } from './types';\nimport { getAuthStorageKeys } from '../tokenProvider/TokenStore';\nconst logger = new ConsoleLogger('DefaultIdentityIdStore');\nexport class DefaultIdentityIdStore {\n setAuthConfig(authConfigParam) {\n assertIdentityPoolIdConfig(authConfigParam.Cognito);\n this.authConfig = authConfigParam;\n this._authKeys = createKeysForAuthStorage('Cognito', authConfigParam.Cognito.identityPoolId);\n return;\n }\n constructor(keyValueStorage) {\n this._authKeys = {};\n this.keyValueStorage = keyValueStorage;\n }\n async loadIdentityId() {\n assertIdentityPoolIdConfig(this.authConfig?.Cognito);\n try {\n if (!!this._primaryIdentityId) {\n return {\n id: this._primaryIdentityId,\n type: 'primary',\n };\n }\n else {\n const storedIdentityId = await this.keyValueStorage.getItem(this._authKeys.identityId);\n if (!!storedIdentityId) {\n return {\n id: storedIdentityId,\n type: 'guest',\n };\n }\n return null;\n }\n }\n catch (err) {\n logger.log('Error getting stored IdentityId.', err);\n return null;\n }\n }\n async storeIdentityId(identity) {\n assertIdentityPoolIdConfig(this.authConfig?.Cognito);\n if (identity.type === 'guest') {\n this.keyValueStorage.setItem(this._authKeys.identityId, identity.id);\n // Clear in-memory storage of primary identityId\n this._primaryIdentityId = undefined;\n }\n else {\n this._primaryIdentityId = identity.id;\n // Clear locally stored guest id\n this.keyValueStorage.removeItem(this._authKeys.identityId);\n }\n }\n async clearIdentityId() {\n this._primaryIdentityId = undefined;\n await this.keyValueStorage.removeItem(this._authKeys.identityId);\n }\n}\nconst createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(IdentityIdStorageKeys)(`com.amplify.${provider}`, identifier);\n};\n","import { assert, AuthConfigurationErrorCode } from './errorHelpers.mjs';\nimport { base64Decoder } from '../../../utils/convert/base64/base64Decoder.mjs';\nimport '../../../types/errors.mjs';\nimport '../../../errors/errorHelpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction assertTokenProviderConfig(cognitoConfig) {\n let assertionValid = true; // assume valid until otherwise proveed\n if (!cognitoConfig) {\n assertionValid = false;\n }\n else {\n assertionValid =\n !!cognitoConfig.userPoolId && !!cognitoConfig.userPoolClientId;\n }\n return assert(assertionValid, AuthConfigurationErrorCode.AuthUserPoolException);\n}\nfunction assertOAuthConfig(cognitoConfig) {\n const validOAuthConfig = !!cognitoConfig?.loginWith?.oauth?.domain &&\n !!cognitoConfig?.loginWith?.oauth?.redirectSignOut &&\n !!cognitoConfig?.loginWith?.oauth?.redirectSignIn &&\n !!cognitoConfig?.loginWith?.oauth?.responseType;\n return assert(validOAuthConfig, AuthConfigurationErrorCode.OAuthNotConfigureException);\n}\nfunction assertIdentityPoolIdConfig(cognitoConfig) {\n const validConfig = !!cognitoConfig?.identityPoolId;\n return assert(validConfig, AuthConfigurationErrorCode.InvalidIdentityPoolIdException);\n}\nfunction decodeJWT(token) {\n const tokenParts = token.split('.');\n if (tokenParts.length !== 3) {\n throw new Error('Invalid token');\n }\n try {\n const base64WithUrlSafe = tokenParts[1];\n const base64 = base64WithUrlSafe.replace(/-/g, '+').replace(/_/g, '/');\n const jsonStr = decodeURIComponent(base64Decoder\n .convert(base64)\n .split('')\n .map(char => `%${`00${char.charCodeAt(0).toString(16)}`.slice(-2)}`)\n .join(''));\n const payload = JSON.parse(jsonStr);\n return {\n toString: () => token,\n payload,\n };\n }\n catch (err) {\n throw new Error('Invalid token payload');\n }\n}\n\nexport { assertIdentityPoolIdConfig, assertOAuthConfig, assertTokenProviderConfig, decodeJWT };\n//# sourceMappingURL=index.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthConfigurationErrorCode, assert } from './errorHelpers';\nimport { base64Decoder } from '../../../utils/convert';\nexport function assertTokenProviderConfig(cognitoConfig) {\n let assertionValid = true; // assume valid until otherwise proveed\n if (!cognitoConfig) {\n assertionValid = false;\n }\n else {\n assertionValid =\n !!cognitoConfig.userPoolId && !!cognitoConfig.userPoolClientId;\n }\n return assert(assertionValid, AuthConfigurationErrorCode.AuthUserPoolException);\n}\nexport function assertOAuthConfig(cognitoConfig) {\n const validOAuthConfig = !!cognitoConfig?.loginWith?.oauth?.domain &&\n !!cognitoConfig?.loginWith?.oauth?.redirectSignOut &&\n !!cognitoConfig?.loginWith?.oauth?.redirectSignIn &&\n !!cognitoConfig?.loginWith?.oauth?.responseType;\n return assert(validOAuthConfig, AuthConfigurationErrorCode.OAuthNotConfigureException);\n}\nexport function assertIdentityPoolIdConfig(cognitoConfig) {\n const validConfig = !!cognitoConfig?.identityPoolId;\n return assert(validConfig, AuthConfigurationErrorCode.InvalidIdentityPoolIdException);\n}\nfunction assertUserPoolAndIdentityPoolConfig(authConfig) {\n const validConfig = !!authConfig?.Cognito.identityPoolId && !!authConfig?.Cognito.userPoolId;\n return assert(validConfig, AuthConfigurationErrorCode.AuthUserPoolAndIdentityPoolException);\n}\nexport function decodeJWT(token) {\n const tokenParts = token.split('.');\n if (tokenParts.length !== 3) {\n throw new Error('Invalid token');\n }\n try {\n const base64WithUrlSafe = tokenParts[1];\n const base64 = base64WithUrlSafe.replace(/-/g, '+').replace(/_/g, '/');\n const jsonStr = decodeURIComponent(base64Decoder\n .convert(base64)\n .split('')\n .map(char => `%${`00${char.charCodeAt(0).toString(16)}`.slice(-2)}`)\n .join(''));\n const payload = JSON.parse(jsonStr);\n return {\n toString: () => token,\n payload,\n };\n }\n catch (err) {\n throw new Error('Invalid token payload');\n }\n}\n","import { createAssertionFunction } from '../../../errors/createAssertionFunction.mjs';\nimport '../../../types/errors.mjs';\nimport '../../../errors/errorHelpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar AuthConfigurationErrorCode;\n(function (AuthConfigurationErrorCode) {\n AuthConfigurationErrorCode[\"AuthTokenConfigException\"] = \"AuthTokenConfigException\";\n AuthConfigurationErrorCode[\"AuthUserPoolAndIdentityPoolException\"] = \"AuthUserPoolAndIdentityPoolException\";\n AuthConfigurationErrorCode[\"AuthUserPoolException\"] = \"AuthUserPoolException\";\n AuthConfigurationErrorCode[\"InvalidIdentityPoolIdException\"] = \"InvalidIdentityPoolIdException\";\n AuthConfigurationErrorCode[\"OAuthNotConfigureException\"] = \"OAuthNotConfigureException\";\n})(AuthConfigurationErrorCode || (AuthConfigurationErrorCode = {}));\nconst authConfigurationErrorMap = {\n [AuthConfigurationErrorCode.AuthTokenConfigException]: {\n message: 'Auth Token Provider not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure in your app.',\n },\n [AuthConfigurationErrorCode.AuthUserPoolAndIdentityPoolException]: {\n message: 'Auth UserPool or IdentityPool not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure in your app with UserPoolId and IdentityPoolId.',\n },\n [AuthConfigurationErrorCode.AuthUserPoolException]: {\n message: 'Auth UserPool not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure in your app with userPoolId and userPoolClientId.',\n },\n [AuthConfigurationErrorCode.InvalidIdentityPoolIdException]: {\n message: 'Invalid identity pool id provided.',\n recoverySuggestion: 'Make sure a valid identityPoolId is given in the config.',\n },\n [AuthConfigurationErrorCode.OAuthNotConfigureException]: {\n message: 'oauth param not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure with oauth parameter in your app.',\n },\n};\nconst assert = createAssertionFunction(authConfigurationErrorMap);\n\nexport { AuthConfigurationErrorCode, assert };\n//# sourceMappingURL=errorHelpers.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { createAssertionFunction } from '../../../errors';\nexport var AuthConfigurationErrorCode;\n(function (AuthConfigurationErrorCode) {\n AuthConfigurationErrorCode[\"AuthTokenConfigException\"] = \"AuthTokenConfigException\";\n AuthConfigurationErrorCode[\"AuthUserPoolAndIdentityPoolException\"] = \"AuthUserPoolAndIdentityPoolException\";\n AuthConfigurationErrorCode[\"AuthUserPoolException\"] = \"AuthUserPoolException\";\n AuthConfigurationErrorCode[\"InvalidIdentityPoolIdException\"] = \"InvalidIdentityPoolIdException\";\n AuthConfigurationErrorCode[\"OAuthNotConfigureException\"] = \"OAuthNotConfigureException\";\n})(AuthConfigurationErrorCode || (AuthConfigurationErrorCode = {}));\nconst authConfigurationErrorMap = {\n [AuthConfigurationErrorCode.AuthTokenConfigException]: {\n message: 'Auth Token Provider not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure in your app.',\n },\n [AuthConfigurationErrorCode.AuthUserPoolAndIdentityPoolException]: {\n message: 'Auth UserPool or IdentityPool not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure in your app with UserPoolId and IdentityPoolId.',\n },\n [AuthConfigurationErrorCode.AuthUserPoolException]: {\n message: 'Auth UserPool not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure in your app with userPoolId and userPoolClientId.',\n },\n [AuthConfigurationErrorCode.InvalidIdentityPoolIdException]: {\n message: 'Invalid identity pool id provided.',\n recoverySuggestion: 'Make sure a valid identityPoolId is given in the config.',\n },\n [AuthConfigurationErrorCode.OAuthNotConfigureException]: {\n message: 'oauth param not configured.',\n recoverySuggestion: 'Make sure to call Amplify.configure with oauth parameter in your app.',\n },\n};\nexport const assert = createAssertionFunction(authConfigurationErrorMap);\n","import { AmplifyError } from './AmplifyError.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst createAssertionFunction = (errorMap, AssertionError = AmplifyError) => (assertion, name, additionalContext) => {\n const { message, recoverySuggestion } = errorMap[name];\n if (!assertion) {\n throw new AssertionError({\n name,\n message: additionalContext\n ? `${message} ${additionalContext}`\n : message,\n recoverySuggestion,\n });\n }\n};\n\nexport { createAssertionFunction };\n//# sourceMappingURL=createAssertionFunction.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyError } from './AmplifyError';\nexport const createAssertionFunction = (errorMap, AssertionError = AmplifyError) => (assertion, name, additionalContext) => {\n const { message, recoverySuggestion } = errorMap[name];\n if (!assertion) {\n throw new AssertionError({\n name,\n message: additionalContext\n ? `${message} ${additionalContext}`\n : message,\n recoverySuggestion,\n });\n }\n};\n","import { getAtob } from '../../globalHelpers/index.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst base64Decoder = {\n convert(input) {\n return getAtob()(input);\n },\n};\n\nexport { base64Decoder };\n//# sourceMappingURL=base64Decoder.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getAtob } from '../../globalHelpers';\nexport const base64Decoder = {\n convert(input) {\n return getAtob()(input);\n },\n};\n","import { AmplifyError } from '../../errors/AmplifyError.mjs';\nimport '../../types/errors.mjs';\nimport '../../errors/errorHelpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst getCrypto = () => {\n if (typeof window === 'object' && typeof window.crypto === 'object') {\n return window.crypto;\n }\n // Next.js global polyfill\n if (typeof crypto === 'object') {\n return crypto;\n }\n throw new AmplifyError({\n name: 'MissingPolyfill',\n message: 'Cannot resolve the `crypto` function from the environment.',\n });\n};\nconst getBtoa = () => {\n // browser\n if (typeof window !== 'undefined' && typeof window.btoa === 'function') {\n return window.btoa;\n }\n // Next.js global polyfill\n if (typeof btoa === 'function') {\n return btoa;\n }\n throw new AmplifyError({\n name: 'Base64EncoderError',\n message: 'Cannot resolve the `btoa` function from the environment.',\n });\n};\nconst getAtob = () => {\n // browser\n if (typeof window !== 'undefined' && typeof window.atob === 'function') {\n return window.atob;\n }\n // Next.js global polyfill\n if (typeof atob === 'function') {\n return atob;\n }\n throw new AmplifyError({\n name: 'Base64EncoderError',\n message: 'Cannot resolve the `atob` function from the environment.',\n });\n};\n\nexport { getAtob, getBtoa, getCrypto };\n//# sourceMappingURL=index.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyError } from '../../errors';\nexport const getCrypto = () => {\n if (typeof window === 'object' && typeof window.crypto === 'object') {\n return window.crypto;\n }\n // Next.js global polyfill\n if (typeof crypto === 'object') {\n return crypto;\n }\n throw new AmplifyError({\n name: 'MissingPolyfill',\n message: 'Cannot resolve the `crypto` function from the environment.',\n });\n};\nexport const getBtoa = () => {\n // browser\n if (typeof window !== 'undefined' && typeof window.btoa === 'function') {\n return window.btoa;\n }\n // Next.js global polyfill\n if (typeof btoa === 'function') {\n return btoa;\n }\n throw new AmplifyError({\n name: 'Base64EncoderError',\n message: 'Cannot resolve the `btoa` function from the environment.',\n });\n};\nexport const getAtob = () => {\n // browser\n if (typeof window !== 'undefined' && typeof window.atob === 'function') {\n return window.atob;\n }\n // Next.js global polyfill\n if (typeof atob === 'function') {\n return atob;\n }\n throw new AmplifyError({\n name: 'Base64EncoderError',\n message: 'Cannot resolve the `atob` function from the environment.',\n });\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst IdentityIdStorageKeys = {\n identityId: 'identityId',\n};\n\nexport { IdentityIdStorageKeys };\n//# sourceMappingURL=types.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const IdentityIdStorageKeys = {\n identityId: 'identityId',\n};\n","import { decodeJWT, assertTokenProviderConfig } from '@aws-amplify/core/internals/utils';\nimport { AuthTokenStorageKeys } from './types.mjs';\nimport { AuthError } from '../../../errors/AuthError.mjs';\nimport { assert, TokenProviderErrorCode } from './errorHelpers.mjs';\n\nclass DefaultTokenStore {\n constructor() {\n this.name = 'CognitoIdentityServiceProvider'; // To be backwards compatible with V5, no migration needed\n }\n getKeyValueStorage() {\n if (!this.keyValueStorage) {\n throw new AuthError({\n name: 'KeyValueStorageNotFoundException',\n message: 'KeyValueStorage was not found in TokenStore',\n });\n }\n return this.keyValueStorage;\n }\n setKeyValueStorage(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n async loadTokens() {\n // TODO(v6): migration logic should be here\n // Reading V5 tokens old format\n try {\n const authKeys = await this.getAuthKeys();\n const accessTokenString = await this.getKeyValueStorage().getItem(authKeys.accessToken);\n if (!accessTokenString) {\n throw new AuthError({\n name: 'NoSessionFoundException',\n message: 'Auth session was not found. Make sure to call signIn.',\n });\n }\n const accessToken = decodeJWT(accessTokenString);\n const itString = await this.getKeyValueStorage().getItem(authKeys.idToken);\n const idToken = itString ? decodeJWT(itString) : undefined;\n const refreshToken = (await this.getKeyValueStorage().getItem(authKeys.refreshToken)) ??\n undefined;\n const clockDriftString = (await this.getKeyValueStorage().getItem(authKeys.clockDrift)) ?? '0';\n const clockDrift = Number.parseInt(clockDriftString);\n const signInDetails = await this.getKeyValueStorage().getItem(authKeys.signInDetails);\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n deviceMetadata: (await this.getDeviceMetadata()) ?? undefined,\n clockDrift,\n username: await this.getLastAuthUser(),\n };\n if (signInDetails) {\n tokens.signInDetails = JSON.parse(signInDetails);\n }\n return tokens;\n }\n catch (err) {\n return null;\n }\n }\n async storeTokens(tokens) {\n assert(tokens !== undefined, TokenProviderErrorCode.InvalidAuthTokens);\n await this.clearTokens();\n const lastAuthUser = tokens.username;\n await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);\n const authKeys = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(authKeys.accessToken, tokens.accessToken.toString());\n if (!!tokens.idToken) {\n await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());\n }\n if (!!tokens.refreshToken) {\n await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);\n }\n if (!!tokens.deviceMetadata) {\n if (tokens.deviceMetadata.deviceKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);\n }\n if (tokens.deviceMetadata.deviceGroupKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceGroupKey, tokens.deviceMetadata.deviceGroupKey);\n }\n await this.getKeyValueStorage().setItem(authKeys.randomPasswordKey, tokens.deviceMetadata.randomPassword);\n }\n if (!!tokens.signInDetails) {\n await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));\n }\n await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);\n }\n async clearTokens() {\n const authKeys = await this.getAuthKeys();\n // Not calling clear because it can remove data that is not managed by AuthTokenStore\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.accessToken),\n this.getKeyValueStorage().removeItem(authKeys.idToken),\n this.getKeyValueStorage().removeItem(authKeys.clockDrift),\n this.getKeyValueStorage().removeItem(authKeys.refreshToken),\n this.getKeyValueStorage().removeItem(authKeys.signInDetails),\n this.getKeyValueStorage().removeItem(this.getLastAuthUserKey()),\n ]);\n }\n async getDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n const deviceKey = await this.getKeyValueStorage().getItem(authKeys.deviceKey);\n const deviceGroupKey = await this.getKeyValueStorage().getItem(authKeys.deviceGroupKey);\n const randomPassword = await this.getKeyValueStorage().getItem(authKeys.randomPasswordKey);\n return !!randomPassword\n ? {\n deviceKey: deviceKey ?? undefined,\n deviceGroupKey: deviceGroupKey ?? undefined,\n randomPassword,\n }\n : null;\n }\n async clearDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.deviceKey),\n this.getKeyValueStorage().removeItem(authKeys.deviceGroupKey),\n this.getKeyValueStorage().removeItem(authKeys.randomPasswordKey),\n ]);\n }\n async getAuthKeys(username) {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n const lastAuthUser = username ?? (await this.getLastAuthUser());\n return createKeysForAuthStorage(this.name, `${this.authConfig.Cognito.userPoolClientId}.${lastAuthUser}`);\n }\n getLastAuthUserKey() {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n const identifier = this.authConfig.Cognito.userPoolClientId;\n return `${this.name}.${identifier}.LastAuthUser`;\n }\n async getLastAuthUser() {\n const lastAuthUser = (await this.getKeyValueStorage().getItem(this.getLastAuthUserKey())) ??\n 'username';\n return lastAuthUser;\n }\n}\nconst createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(AuthTokenStorageKeys)(`${provider}`, identifier);\n};\nfunction getAuthStorageKeys(authKeys) {\n const keys = Object.values({ ...authKeys });\n return (prefix, identifier) => keys.reduce((acc, authKey) => ({\n ...acc,\n [authKey]: `${prefix}.${identifier}.${authKey}`,\n }), {});\n}\n\nexport { DefaultTokenStore, createKeysForAuthStorage, getAuthStorageKeys };\n//# sourceMappingURL=TokenStore.mjs.map\n","import { assertTokenProviderConfig, decodeJWT, } from '@aws-amplify/core/internals/utils';\nimport { AuthTokenStorageKeys, } from './types';\nimport { AuthError } from '../../../errors/AuthError';\nimport { assert, TokenProviderErrorCode } from './errorHelpers';\nexport class DefaultTokenStore {\n constructor() {\n this.name = 'CognitoIdentityServiceProvider'; // To be backwards compatible with V5, no migration needed\n }\n getKeyValueStorage() {\n if (!this.keyValueStorage) {\n throw new AuthError({\n name: 'KeyValueStorageNotFoundException',\n message: 'KeyValueStorage was not found in TokenStore',\n });\n }\n return this.keyValueStorage;\n }\n setKeyValueStorage(keyValueStorage) {\n this.keyValueStorage = keyValueStorage;\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n async loadTokens() {\n // TODO(v6): migration logic should be here\n // Reading V5 tokens old format\n try {\n const authKeys = await this.getAuthKeys();\n const accessTokenString = await this.getKeyValueStorage().getItem(authKeys.accessToken);\n if (!accessTokenString) {\n throw new AuthError({\n name: 'NoSessionFoundException',\n message: 'Auth session was not found. Make sure to call signIn.',\n });\n }\n const accessToken = decodeJWT(accessTokenString);\n const itString = await this.getKeyValueStorage().getItem(authKeys.idToken);\n const idToken = itString ? decodeJWT(itString) : undefined;\n const refreshToken = (await this.getKeyValueStorage().getItem(authKeys.refreshToken)) ??\n undefined;\n const clockDriftString = (await this.getKeyValueStorage().getItem(authKeys.clockDrift)) ?? '0';\n const clockDrift = Number.parseInt(clockDriftString);\n const signInDetails = await this.getKeyValueStorage().getItem(authKeys.signInDetails);\n const tokens = {\n accessToken,\n idToken,\n refreshToken,\n deviceMetadata: (await this.getDeviceMetadata()) ?? undefined,\n clockDrift,\n username: await this.getLastAuthUser(),\n };\n if (signInDetails) {\n tokens.signInDetails = JSON.parse(signInDetails);\n }\n return tokens;\n }\n catch (err) {\n return null;\n }\n }\n async storeTokens(tokens) {\n assert(tokens !== undefined, TokenProviderErrorCode.InvalidAuthTokens);\n await this.clearTokens();\n const lastAuthUser = tokens.username;\n await this.getKeyValueStorage().setItem(this.getLastAuthUserKey(), lastAuthUser);\n const authKeys = await this.getAuthKeys();\n await this.getKeyValueStorage().setItem(authKeys.accessToken, tokens.accessToken.toString());\n if (!!tokens.idToken) {\n await this.getKeyValueStorage().setItem(authKeys.idToken, tokens.idToken.toString());\n }\n if (!!tokens.refreshToken) {\n await this.getKeyValueStorage().setItem(authKeys.refreshToken, tokens.refreshToken);\n }\n if (!!tokens.deviceMetadata) {\n if (tokens.deviceMetadata.deviceKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceKey, tokens.deviceMetadata.deviceKey);\n }\n if (tokens.deviceMetadata.deviceGroupKey) {\n await this.getKeyValueStorage().setItem(authKeys.deviceGroupKey, tokens.deviceMetadata.deviceGroupKey);\n }\n await this.getKeyValueStorage().setItem(authKeys.randomPasswordKey, tokens.deviceMetadata.randomPassword);\n }\n if (!!tokens.signInDetails) {\n await this.getKeyValueStorage().setItem(authKeys.signInDetails, JSON.stringify(tokens.signInDetails));\n }\n await this.getKeyValueStorage().setItem(authKeys.clockDrift, `${tokens.clockDrift}`);\n }\n async clearTokens() {\n const authKeys = await this.getAuthKeys();\n // Not calling clear because it can remove data that is not managed by AuthTokenStore\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.accessToken),\n this.getKeyValueStorage().removeItem(authKeys.idToken),\n this.getKeyValueStorage().removeItem(authKeys.clockDrift),\n this.getKeyValueStorage().removeItem(authKeys.refreshToken),\n this.getKeyValueStorage().removeItem(authKeys.signInDetails),\n this.getKeyValueStorage().removeItem(this.getLastAuthUserKey()),\n ]);\n }\n async getDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n const deviceKey = await this.getKeyValueStorage().getItem(authKeys.deviceKey);\n const deviceGroupKey = await this.getKeyValueStorage().getItem(authKeys.deviceGroupKey);\n const randomPassword = await this.getKeyValueStorage().getItem(authKeys.randomPasswordKey);\n return !!randomPassword\n ? {\n deviceKey: deviceKey ?? undefined,\n deviceGroupKey: deviceGroupKey ?? undefined,\n randomPassword,\n }\n : null;\n }\n async clearDeviceMetadata(username) {\n const authKeys = await this.getAuthKeys(username);\n await Promise.all([\n this.getKeyValueStorage().removeItem(authKeys.deviceKey),\n this.getKeyValueStorage().removeItem(authKeys.deviceGroupKey),\n this.getKeyValueStorage().removeItem(authKeys.randomPasswordKey),\n ]);\n }\n async getAuthKeys(username) {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n const lastAuthUser = username ?? (await this.getLastAuthUser());\n return createKeysForAuthStorage(this.name, `${this.authConfig.Cognito.userPoolClientId}.${lastAuthUser}`);\n }\n getLastAuthUserKey() {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n const identifier = this.authConfig.Cognito.userPoolClientId;\n return `${this.name}.${identifier}.LastAuthUser`;\n }\n async getLastAuthUser() {\n const lastAuthUser = (await this.getKeyValueStorage().getItem(this.getLastAuthUserKey())) ??\n 'username';\n return lastAuthUser;\n }\n}\nexport const createKeysForAuthStorage = (provider, identifier) => {\n return getAuthStorageKeys(AuthTokenStorageKeys)(`${provider}`, identifier);\n};\nexport function getAuthStorageKeys(authKeys) {\n const keys = Object.values({ ...authKeys });\n return (prefix, identifier) => keys.reduce((acc, authKey) => ({\n ...acc,\n [authKey]: `${prefix}.${identifier}.${authKey}`,\n }), {});\n}\n","const AuthTokenStorageKeys = {\n accessToken: 'accessToken',\n idToken: 'idToken',\n oidcProvider: 'oidcProvider',\n clockDrift: 'clockDrift',\n refreshToken: 'refreshToken',\n deviceKey: 'deviceKey',\n randomPasswordKey: 'randomPasswordKey',\n deviceGroupKey: 'deviceGroupKey',\n signInDetails: 'signInDetails',\n};\n\nexport { AuthTokenStorageKeys };\n//# sourceMappingURL=types.mjs.map\n","export const AuthTokenStorageKeys = {\n accessToken: 'accessToken',\n idToken: 'idToken',\n oidcProvider: 'oidcProvider',\n clockDrift: 'clockDrift',\n refreshToken: 'refreshToken',\n deviceKey: 'deviceKey',\n randomPasswordKey: 'randomPasswordKey',\n deviceGroupKey: 'deviceGroupKey',\n signInDetails: 'signInDetails',\n};\n","import { AmplifyError } from '@aws-amplify/core/internals/utils';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass AuthError extends AmplifyError {\n constructor(params) {\n super(params);\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = AuthError;\n Object.setPrototypeOf(this, AuthError.prototype);\n }\n}\n\nexport { AuthError };\n//# sourceMappingURL=AuthError.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AmplifyError, } from '@aws-amplify/core/internals/utils';\nexport class AuthError extends AmplifyError {\n constructor(params) {\n super(params);\n // Hack for making the custom error class work when transpiled to es5\n // TODO: Delete the following 2 lines after we change the build target to >= es2015\n this.constructor = AuthError;\n Object.setPrototypeOf(this, AuthError.prototype);\n }\n}\n","import { createAssertionFunction } from '@aws-amplify/core/internals/utils';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar TokenProviderErrorCode;\n(function (TokenProviderErrorCode) {\n TokenProviderErrorCode[\"InvalidAuthTokens\"] = \"InvalidAuthTokens\";\n})(TokenProviderErrorCode || (TokenProviderErrorCode = {}));\nconst tokenValidationErrorMap = {\n [TokenProviderErrorCode.InvalidAuthTokens]: {\n message: 'Invalid tokens.',\n recoverySuggestion: 'Make sure the tokens are valid.',\n },\n};\nconst assert = createAssertionFunction(tokenValidationErrorMap);\n\nexport { TokenProviderErrorCode, assert };\n//# sourceMappingURL=errorHelpers.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { createAssertionFunction, } from '@aws-amplify/core/internals/utils';\nexport var TokenProviderErrorCode;\n(function (TokenProviderErrorCode) {\n TokenProviderErrorCode[\"InvalidAuthTokens\"] = \"InvalidAuthTokens\";\n})(TokenProviderErrorCode || (TokenProviderErrorCode = {}));\nconst tokenValidationErrorMap = {\n [TokenProviderErrorCode.InvalidAuthTokens]: {\n message: 'Invalid tokens.',\n recoverySuggestion: 'Make sure the tokens are valid.',\n },\n};\nexport const assert = createAssertionFunction(tokenValidationErrorMap);\n","import { cognitoIdentityIdProvider } from './IdentityIdProvider.mjs';\nimport { ConsoleLogger, getCredentialsForIdentity } from '@aws-amplify/core';\nimport { assertIdentityPoolIdConfig } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../../../errors/AuthError.mjs';\nimport { getRegionFromIdentityPoolId } from '../utils/clients/CognitoIdentityProvider/utils.mjs';\nimport { assertIdTokenInAuthTokens } from '../utils/types.mjs';\nimport { formLoginsMap } from './utils.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst logger = new ConsoleLogger('CognitoCredentialsProvider');\nconst CREDENTIALS_TTL = 50 * 60 * 1000; // 50 min, can be modified on config if required in the future\nclass CognitoAWSCredentialsAndIdentityIdProvider {\n constructor(identityIdStore) {\n this._nextCredentialsRefresh = 0;\n this._identityIdStore = identityIdStore;\n }\n async clearCredentialsAndIdentityId() {\n logger.debug('Clearing out credentials and identityId');\n this._credentialsAndIdentityId = undefined;\n await this._identityIdStore.clearIdentityId();\n }\n async clearCredentials() {\n logger.debug('Clearing out in-memory credentials');\n this._credentialsAndIdentityId = undefined;\n }\n async getCredentialsAndIdentityId(getCredentialsOptions) {\n const isAuthenticated = getCredentialsOptions.authenticated;\n const tokens = getCredentialsOptions.tokens;\n const authConfig = getCredentialsOptions.authConfig;\n try {\n assertIdentityPoolIdConfig(authConfig?.Cognito);\n }\n catch {\n // No identity pool configured, skipping\n return;\n }\n if (!isAuthenticated && !authConfig.Cognito.allowGuestAccess) {\n // TODO(V6): return partial result like Native platforms\n return;\n }\n const forceRefresh = getCredentialsOptions.forceRefresh;\n const tokenHasChanged = this.hasTokenChanged(tokens);\n const identityId = await cognitoIdentityIdProvider({\n tokens,\n authConfig: authConfig.Cognito,\n identityIdStore: this._identityIdStore,\n });\n // Clear cached credentials when forceRefresh is true OR the cache token has changed\n if (forceRefresh || tokenHasChanged) {\n this.clearCredentials();\n }\n if (!isAuthenticated) {\n return this.getGuestCredentials(identityId, authConfig.Cognito);\n }\n else {\n assertIdTokenInAuthTokens(tokens);\n return this.credsForOIDCTokens(authConfig.Cognito, tokens, identityId);\n }\n }\n async getGuestCredentials(identityId, authConfig) {\n // Return existing in-memory cached credentials only if it exists, is not past it's lifetime and is unauthenticated credentials\n if (this._credentialsAndIdentityId &&\n !this.isPastTTL() &&\n this._credentialsAndIdentityId.isAuthenticatedCreds === false) {\n logger.info('returning stored credentials as they neither past TTL nor expired.');\n return this._credentialsAndIdentityId;\n }\n // Clear to discard if any authenticated credentials are set and start with a clean slate\n this.clearCredentials();\n const region = getRegionFromIdentityPoolId(authConfig.identityPoolId);\n // use identityId to obtain guest credentials\n // save credentials in-memory\n // No logins params should be passed for guest creds:\n // https://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetCredentialsForIdentity.html\n const clientResult = await getCredentialsForIdentity({ region }, {\n IdentityId: identityId,\n });\n if (clientResult.Credentials &&\n clientResult.Credentials.AccessKeyId &&\n clientResult.Credentials.SecretKey) {\n this._nextCredentialsRefresh = new Date().getTime() + CREDENTIALS_TTL;\n const res = {\n credentials: {\n accessKeyId: clientResult.Credentials.AccessKeyId,\n secretAccessKey: clientResult.Credentials.SecretKey,\n sessionToken: clientResult.Credentials.SessionToken,\n expiration: clientResult.Credentials.Expiration,\n },\n identityId,\n };\n const identityIdRes = clientResult.IdentityId;\n if (identityIdRes) {\n res.identityId = identityIdRes;\n this._identityIdStore.storeIdentityId({\n id: identityIdRes,\n type: 'guest',\n });\n }\n this._credentialsAndIdentityId = {\n ...res,\n isAuthenticatedCreds: false,\n };\n return res;\n }\n else {\n throw new AuthError({\n name: 'CredentialsNotFoundException',\n message: `Cognito did not respond with either Credentials, AccessKeyId or SecretKey.`,\n });\n }\n }\n async credsForOIDCTokens(authConfig, authTokens, identityId) {\n if (this._credentialsAndIdentityId &&\n !this.isPastTTL() &&\n this._credentialsAndIdentityId.isAuthenticatedCreds === true) {\n logger.debug('returning stored credentials as they neither past TTL nor expired.');\n return this._credentialsAndIdentityId;\n }\n // Clear to discard if any unauthenticated credentials are set and start with a clean slate\n this.clearCredentials();\n const logins = authTokens.idToken\n ? formLoginsMap(authTokens.idToken.toString())\n : {};\n const region = getRegionFromIdentityPoolId(authConfig.identityPoolId);\n const clientResult = await getCredentialsForIdentity({ region }, {\n IdentityId: identityId,\n Logins: logins,\n });\n if (clientResult.Credentials &&\n clientResult.Credentials.AccessKeyId &&\n clientResult.Credentials.SecretKey) {\n const res = {\n credentials: {\n accessKeyId: clientResult.Credentials.AccessKeyId,\n secretAccessKey: clientResult.Credentials.SecretKey,\n sessionToken: clientResult.Credentials.SessionToken,\n expiration: clientResult.Credentials.Expiration,\n },\n identityId,\n };\n // Store the credentials in-memory along with the expiration\n this._credentialsAndIdentityId = {\n ...res,\n isAuthenticatedCreds: true,\n associatedIdToken: authTokens.idToken?.toString(),\n };\n this._nextCredentialsRefresh = new Date().getTime() + CREDENTIALS_TTL;\n const identityIdRes = clientResult.IdentityId;\n if (identityIdRes) {\n res.identityId = identityIdRes;\n this._identityIdStore.storeIdentityId({\n id: identityIdRes,\n type: 'primary',\n });\n }\n return res;\n }\n else {\n throw new AuthError({\n name: 'CredentialsException',\n message: `Cognito did not respond with either Credentials, AccessKeyId or SecretKey.`,\n });\n }\n }\n isPastTTL() {\n return this._nextCredentialsRefresh === undefined\n ? true\n : this._nextCredentialsRefresh <= Date.now();\n }\n hasTokenChanged(tokens) {\n return (!!tokens &&\n !!this._credentialsAndIdentityId?.associatedIdToken &&\n tokens.idToken?.toString() !==\n this._credentialsAndIdentityId.associatedIdToken);\n }\n}\n\nexport { CognitoAWSCredentialsAndIdentityIdProvider };\n//# sourceMappingURL=credentialsProvider.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { cognitoIdentityIdProvider } from './IdentityIdProvider';\nimport { getCredentialsForIdentity, ConsoleLogger, } from '@aws-amplify/core';\nimport { assertIdentityPoolIdConfig, } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../../../errors/AuthError';\nimport { getRegionFromIdentityPoolId } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { assertIdTokenInAuthTokens } from '../utils/types';\nimport { formLoginsMap } from './utils';\nconst logger = new ConsoleLogger('CognitoCredentialsProvider');\nconst CREDENTIALS_TTL = 50 * 60 * 1000; // 50 min, can be modified on config if required in the future\nexport class CognitoAWSCredentialsAndIdentityIdProvider {\n constructor(identityIdStore) {\n this._nextCredentialsRefresh = 0;\n this._identityIdStore = identityIdStore;\n }\n async clearCredentialsAndIdentityId() {\n logger.debug('Clearing out credentials and identityId');\n this._credentialsAndIdentityId = undefined;\n await this._identityIdStore.clearIdentityId();\n }\n async clearCredentials() {\n logger.debug('Clearing out in-memory credentials');\n this._credentialsAndIdentityId = undefined;\n }\n async getCredentialsAndIdentityId(getCredentialsOptions) {\n const isAuthenticated = getCredentialsOptions.authenticated;\n const tokens = getCredentialsOptions.tokens;\n const authConfig = getCredentialsOptions.authConfig;\n try {\n assertIdentityPoolIdConfig(authConfig?.Cognito);\n }\n catch {\n // No identity pool configured, skipping\n return;\n }\n if (!isAuthenticated && !authConfig.Cognito.allowGuestAccess) {\n // TODO(V6): return partial result like Native platforms\n return;\n }\n const forceRefresh = getCredentialsOptions.forceRefresh;\n const tokenHasChanged = this.hasTokenChanged(tokens);\n const identityId = await cognitoIdentityIdProvider({\n tokens,\n authConfig: authConfig.Cognito,\n identityIdStore: this._identityIdStore,\n });\n // Clear cached credentials when forceRefresh is true OR the cache token has changed\n if (forceRefresh || tokenHasChanged) {\n this.clearCredentials();\n }\n if (!isAuthenticated) {\n return this.getGuestCredentials(identityId, authConfig.Cognito);\n }\n else {\n assertIdTokenInAuthTokens(tokens);\n return this.credsForOIDCTokens(authConfig.Cognito, tokens, identityId);\n }\n }\n async getGuestCredentials(identityId, authConfig) {\n // Return existing in-memory cached credentials only if it exists, is not past it's lifetime and is unauthenticated credentials\n if (this._credentialsAndIdentityId &&\n !this.isPastTTL() &&\n this._credentialsAndIdentityId.isAuthenticatedCreds === false) {\n logger.info('returning stored credentials as they neither past TTL nor expired.');\n return this._credentialsAndIdentityId;\n }\n // Clear to discard if any authenticated credentials are set and start with a clean slate\n this.clearCredentials();\n const region = getRegionFromIdentityPoolId(authConfig.identityPoolId);\n // use identityId to obtain guest credentials\n // save credentials in-memory\n // No logins params should be passed for guest creds:\n // https://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetCredentialsForIdentity.html\n const clientResult = await getCredentialsForIdentity({ region }, {\n IdentityId: identityId,\n });\n if (clientResult.Credentials &&\n clientResult.Credentials.AccessKeyId &&\n clientResult.Credentials.SecretKey) {\n this._nextCredentialsRefresh = new Date().getTime() + CREDENTIALS_TTL;\n const res = {\n credentials: {\n accessKeyId: clientResult.Credentials.AccessKeyId,\n secretAccessKey: clientResult.Credentials.SecretKey,\n sessionToken: clientResult.Credentials.SessionToken,\n expiration: clientResult.Credentials.Expiration,\n },\n identityId,\n };\n const identityIdRes = clientResult.IdentityId;\n if (identityIdRes) {\n res.identityId = identityIdRes;\n this._identityIdStore.storeIdentityId({\n id: identityIdRes,\n type: 'guest',\n });\n }\n this._credentialsAndIdentityId = {\n ...res,\n isAuthenticatedCreds: false,\n };\n return res;\n }\n else {\n throw new AuthError({\n name: 'CredentialsNotFoundException',\n message: `Cognito did not respond with either Credentials, AccessKeyId or SecretKey.`,\n });\n }\n }\n async credsForOIDCTokens(authConfig, authTokens, identityId) {\n if (this._credentialsAndIdentityId &&\n !this.isPastTTL() &&\n this._credentialsAndIdentityId.isAuthenticatedCreds === true) {\n logger.debug('returning stored credentials as they neither past TTL nor expired.');\n return this._credentialsAndIdentityId;\n }\n // Clear to discard if any unauthenticated credentials are set and start with a clean slate\n this.clearCredentials();\n const logins = authTokens.idToken\n ? formLoginsMap(authTokens.idToken.toString())\n : {};\n const region = getRegionFromIdentityPoolId(authConfig.identityPoolId);\n const clientResult = await getCredentialsForIdentity({ region }, {\n IdentityId: identityId,\n Logins: logins,\n });\n if (clientResult.Credentials &&\n clientResult.Credentials.AccessKeyId &&\n clientResult.Credentials.SecretKey) {\n const res = {\n credentials: {\n accessKeyId: clientResult.Credentials.AccessKeyId,\n secretAccessKey: clientResult.Credentials.SecretKey,\n sessionToken: clientResult.Credentials.SessionToken,\n expiration: clientResult.Credentials.Expiration,\n },\n identityId,\n };\n // Store the credentials in-memory along with the expiration\n this._credentialsAndIdentityId = {\n ...res,\n isAuthenticatedCreds: true,\n associatedIdToken: authTokens.idToken?.toString(),\n };\n this._nextCredentialsRefresh = new Date().getTime() + CREDENTIALS_TTL;\n const identityIdRes = clientResult.IdentityId;\n if (identityIdRes) {\n res.identityId = identityIdRes;\n this._identityIdStore.storeIdentityId({\n id: identityIdRes,\n type: 'primary',\n });\n }\n return res;\n }\n else {\n throw new AuthError({\n name: 'CredentialsException',\n message: `Cognito did not respond with either Credentials, AccessKeyId or SecretKey.`,\n });\n }\n }\n isPastTTL() {\n return this._nextCredentialsRefresh === undefined\n ? true\n : this._nextCredentialsRefresh <= Date.now();\n }\n hasTokenChanged(tokens) {\n return (!!tokens &&\n !!this._credentialsAndIdentityId?.associatedIdToken &&\n tokens.idToken?.toString() !==\n this._credentialsAndIdentityId.associatedIdToken);\n }\n}\n","import { ConsoleLogger, getId } from '@aws-amplify/core';\nimport { AuthError } from '../../../errors/AuthError.mjs';\nimport { getRegionFromIdentityPoolId } from '../utils/clients/CognitoIdentityProvider/utils.mjs';\nimport { formLoginsMap } from './utils.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst logger = new ConsoleLogger('CognitoIdentityIdProvider');\n/**\n * Provides a Cognito identityId\n *\n * @param tokens - The AuthTokens received after SignIn\n * @returns string\n * @throws configuration excpetions: {@link InvalidIdentityPoolIdException }\n * - Auth errors that may arise from misconfiguration.\n * @throws service excpetions: {@link GetIdException }\n */\nasync function cognitoIdentityIdProvider({ tokens, authConfig, identityIdStore, }) {\n identityIdStore.setAuthConfig({ Cognito: authConfig });\n // will return null only if there is no identityId cached or if there is an error retrieving it\n let identityId = await identityIdStore.loadIdentityId();\n // Tokens are available so return primary identityId\n if (tokens) {\n // If there is existing primary identityId in-memory return that\n if (identityId && identityId.type === 'primary') {\n return identityId.id;\n }\n else {\n const logins = tokens.idToken\n ? formLoginsMap(tokens.idToken.toString())\n : {};\n const generatedIdentityId = await generateIdentityId(logins, authConfig);\n if (identityId && identityId.id === generatedIdentityId) {\n logger.debug(`The guest identity ${identityId.id} has become the primary identity.`);\n }\n identityId = {\n id: generatedIdentityId,\n type: 'primary',\n };\n }\n }\n else {\n // If there is existing guest identityId cached return that\n if (identityId && identityId.type === 'guest') {\n return identityId.id;\n }\n else {\n identityId = {\n id: await generateIdentityId({}, authConfig),\n type: 'guest',\n };\n }\n }\n // Store in-memory or local storage depending on guest or primary identityId\n identityIdStore.storeIdentityId(identityId);\n return identityId.id;\n}\nasync function generateIdentityId(logins, authConfig) {\n const identityPoolId = authConfig?.identityPoolId;\n const region = getRegionFromIdentityPoolId(identityPoolId);\n // IdentityId is absent so get it using IdentityPoolId with Cognito's GetId API\n const idResult = \n // for a first-time user, this will return a brand new identity\n // for a returning user, this will retrieve the previous identity assocaited with the logins\n (await getId({\n region,\n }, {\n IdentityPoolId: identityPoolId,\n Logins: logins,\n })).IdentityId;\n if (!idResult) {\n throw new AuthError({\n name: 'GetIdResponseException',\n message: 'Received undefined response from getId operation',\n recoverySuggestion: 'Make sure to pass a valid identityPoolId in the configuration.',\n });\n }\n return idResult;\n}\n\nexport { cognitoIdentityIdProvider };\n//# sourceMappingURL=IdentityIdProvider.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getId, ConsoleLogger } from '@aws-amplify/core';\nimport { AuthError } from '../../../errors/AuthError';\nimport { getRegionFromIdentityPoolId } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { formLoginsMap } from './utils';\nconst logger = new ConsoleLogger('CognitoIdentityIdProvider');\n/**\n * Provides a Cognito identityId\n *\n * @param tokens - The AuthTokens received after SignIn\n * @returns string\n * @throws configuration excpetions: {@link InvalidIdentityPoolIdException }\n * - Auth errors that may arise from misconfiguration.\n * @throws service excpetions: {@link GetIdException }\n */\nexport async function cognitoIdentityIdProvider({ tokens, authConfig, identityIdStore, }) {\n identityIdStore.setAuthConfig({ Cognito: authConfig });\n // will return null only if there is no identityId cached or if there is an error retrieving it\n let identityId = await identityIdStore.loadIdentityId();\n // Tokens are available so return primary identityId\n if (tokens) {\n // If there is existing primary identityId in-memory return that\n if (identityId && identityId.type === 'primary') {\n return identityId.id;\n }\n else {\n const logins = tokens.idToken\n ? formLoginsMap(tokens.idToken.toString())\n : {};\n const generatedIdentityId = await generateIdentityId(logins, authConfig);\n if (identityId && identityId.id === generatedIdentityId) {\n logger.debug(`The guest identity ${identityId.id} has become the primary identity.`);\n }\n identityId = {\n id: generatedIdentityId,\n type: 'primary',\n };\n }\n }\n else {\n // If there is existing guest identityId cached return that\n if (identityId && identityId.type === 'guest') {\n return identityId.id;\n }\n else {\n identityId = {\n id: await generateIdentityId({}, authConfig),\n type: 'guest',\n };\n }\n }\n // Store in-memory or local storage depending on guest or primary identityId\n identityIdStore.storeIdentityId(identityId);\n return identityId.id;\n}\nasync function generateIdentityId(logins, authConfig) {\n const identityPoolId = authConfig?.identityPoolId;\n const region = getRegionFromIdentityPoolId(identityPoolId);\n // IdentityId is absent so get it using IdentityPoolId with Cognito's GetId API\n const idResult = \n // for a first-time user, this will return a brand new identity\n // for a returning user, this will retrieve the previous identity assocaited with the logins\n (await getId({\n region,\n }, {\n IdentityPoolId: identityPoolId,\n Logins: logins,\n })).IdentityId;\n if (!idResult) {\n throw new AuthError({\n name: 'GetIdResponseException',\n message: 'Received undefined response from getId operation',\n recoverySuggestion: 'Make sure to pass a valid identityPoolId in the configuration.',\n });\n }\n return idResult;\n}\n","import { defaultConfig, cognitoIdentityTransferHandler, buildHttpRpcRequest, getSharedHeaders } from './base.mjs';\nimport '../../utils/getClientInfo/getClientInfo.mjs';\nimport '../../utils/retry/retry.mjs';\nimport '@aws-crypto/sha256-js';\nimport '@smithy/util-hex-encoding';\nimport { parseMetadata } from '../../clients/serde/responseInfo.mjs';\nimport { parseJsonError, parseJsonBody } from '../../clients/serde/json.mjs';\nimport { composeServiceApi } from '../../clients/internal/composeServiceApi.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst getIdSerializer = (input, endpoint) => {\n const headers = getSharedHeaders('GetId');\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst getIdDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n throw error;\n }\n else {\n const body = await parseJsonBody(response);\n return {\n IdentityId: body.IdentityId,\n $metadata: parseMetadata(response),\n };\n }\n};\n/**\n * @internal\n */\nconst getId = composeServiceApi(cognitoIdentityTransferHandler, getIdSerializer, getIdDeserializer, defaultConfig);\n\nexport { getId };\n//# sourceMappingURL=getId.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { buildHttpRpcRequest, cognitoIdentityTransferHandler, defaultConfig, getSharedHeaders, } from './base';\nimport { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients';\nimport { composeServiceApi } from '../../clients/internal';\nconst getIdSerializer = (input, endpoint) => {\n const headers = getSharedHeaders('GetId');\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst getIdDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n throw error;\n }\n else {\n const body = await parseJsonBody(response);\n return {\n IdentityId: body.IdentityId,\n $metadata: parseMetadata(response),\n };\n }\n};\n/**\n * @internal\n */\nexport const getId = composeServiceApi(cognitoIdentityTransferHandler, getIdSerializer, getIdDeserializer, defaultConfig);\n","import { getDnsSuffix } from '../../clients/endpoints/getDnsSuffix.mjs';\nimport { unauthenticatedHandler } from '../../clients/handlers/unauthenticated.mjs';\nimport { jitteredBackoff } from '../../clients/middleware/retry/jitteredBackoff.mjs';\nimport { getRetryDecider } from '../../clients/middleware/retry/defaultRetryDecider.mjs';\nimport '@aws-crypto/sha256-js';\nimport '@smithy/util-hex-encoding';\nimport { AmplifyUrl } from '../../utils/amplifyUrl/index.mjs';\nimport { composeTransferHandler } from '../../clients/internal/composeTransferHandler.mjs';\nimport { parseJsonError } from '../../clients/serde/json.mjs';\nimport { getAmplifyUserAgent } from '../../Platform/index.mjs';\nimport { observeFrameworkChanges } from '../../Platform/detectFramework.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * The service name used to sign requests if the API requires authentication.\n */\nconst SERVICE_NAME = 'cognito-identity';\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region.\n */\nconst endpointResolver = ({ region }) => ({\n url: new AmplifyUrl(`https://cognito-identity.${region}.${getDnsSuffix(region)}`),\n});\n/**\n * A Cognito Identity-specific middleware that disables caching for all requests.\n */\nconst disableCacheMiddleware = () => (next, context) => async function disableCacheMiddleware(request) {\n request.headers['cache-control'] = 'no-store';\n return next(request);\n};\n/**\n * A Cognito Identity-specific transfer handler that does NOT sign requests, and\n * disables caching.\n *\n * @internal\n */\nconst cognitoIdentityTransferHandler = composeTransferHandler(unauthenticatedHandler, [disableCacheMiddleware]);\n/**\n * @internal\n */\nconst defaultConfig = {\n service: SERVICE_NAME,\n endpointResolver,\n retryDecider: getRetryDecider(parseJsonError),\n computeDelay: jitteredBackoff,\n userAgentValue: getAmplifyUserAgent(),\n cache: 'no-store',\n};\nobserveFrameworkChanges(() => {\n defaultConfig.userAgentValue = getAmplifyUserAgent();\n});\n/**\n * @internal\n */\nconst getSharedHeaders = (operation) => ({\n 'content-type': 'application/x-amz-json-1.1',\n 'x-amz-target': `AWSCognitoIdentityService.${operation}`,\n});\n/**\n * @internal\n */\nconst buildHttpRpcRequest = ({ url }, headers, body) => ({\n headers,\n url,\n body,\n method: 'POST',\n});\n\nexport { buildHttpRpcRequest, cognitoIdentityTransferHandler, defaultConfig, getSharedHeaders };\n//# sourceMappingURL=base.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { getDnsSuffix, unauthenticatedHandler, parseJsonError, } from '../../clients';\nimport { composeTransferHandler } from '../../clients/internal/composeTransferHandler';\nimport { jitteredBackoff, getRetryDecider, } from '../../clients/middleware/retry';\nimport { getAmplifyUserAgent } from '../../Platform';\nimport { observeFrameworkChanges } from '../../Platform/detectFramework';\nimport { AmplifyUrl } from '../../utils/amplifyUrl';\n/**\n * The service name used to sign requests if the API requires authentication.\n */\nconst SERVICE_NAME = 'cognito-identity';\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region.\n */\nconst endpointResolver = ({ region }) => ({\n url: new AmplifyUrl(`https://cognito-identity.${region}.${getDnsSuffix(region)}`),\n});\n/**\n * A Cognito Identity-specific middleware that disables caching for all requests.\n */\nconst disableCacheMiddleware = () => (next, context) => async function disableCacheMiddleware(request) {\n request.headers['cache-control'] = 'no-store';\n return next(request);\n};\n/**\n * A Cognito Identity-specific transfer handler that does NOT sign requests, and\n * disables caching.\n *\n * @internal\n */\nexport const cognitoIdentityTransferHandler = composeTransferHandler(unauthenticatedHandler, [disableCacheMiddleware]);\n/**\n * @internal\n */\nexport const defaultConfig = {\n service: SERVICE_NAME,\n endpointResolver,\n retryDecider: getRetryDecider(parseJsonError),\n computeDelay: jitteredBackoff,\n userAgentValue: getAmplifyUserAgent(),\n cache: 'no-store',\n};\nobserveFrameworkChanges(() => {\n defaultConfig.userAgentValue = getAmplifyUserAgent();\n});\n/**\n * @internal\n */\nexport const getSharedHeaders = (operation) => ({\n 'content-type': 'application/x-amz-json-1.1',\n 'x-amz-target': `AWSCognitoIdentityService.${operation}`,\n});\n/**\n * @internal\n */\nexport const buildHttpRpcRequest = ({ url }, headers, body) => ({\n headers,\n url,\n body,\n method: 'POST',\n});\n","import { defaultPartition, partitionsInfo } from './partitions.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Get the AWS Services endpoint URL's DNS suffix for a given region. A typical AWS regional service endpoint URL will\n * follow this pattern: {endpointPrefix}.{region}.{dnsSuffix}. For example, the endpoint URL for Cognito Identity in\n * us-east-1 will be cognito-identity.us-east-1.amazonaws.com. Here the DnsSuffix is `amazonaws.com`.\n *\n * @param region\n * @returns The DNS suffix\n *\n * @internal\n */\nconst getDnsSuffix = (region) => {\n const { partitions } = partitionsInfo;\n for (const { regions, outputs, regionRegex } of partitions) {\n const regex = new RegExp(regionRegex);\n if (regions.includes(region) || regex.test(region)) {\n return outputs.dnsSuffix;\n }\n }\n return defaultPartition.outputs.dnsSuffix;\n};\n\nexport { getDnsSuffix };\n//# sourceMappingURL=getDnsSuffix.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { defaultPartition, partitionsInfo } from './partitions';\n/**\n * Get the AWS Services endpoint URL's DNS suffix for a given region. A typical AWS regional service endpoint URL will\n * follow this pattern: {endpointPrefix}.{region}.{dnsSuffix}. For example, the endpoint URL for Cognito Identity in\n * us-east-1 will be cognito-identity.us-east-1.amazonaws.com. Here the DnsSuffix is `amazonaws.com`.\n *\n * @param region\n * @returns The DNS suffix\n *\n * @internal\n */\nexport const getDnsSuffix = (region) => {\n const { partitions } = partitionsInfo;\n for (const { regions, outputs, regionRegex } of partitions) {\n const regex = new RegExp(regionRegex);\n if (regions.includes(region) || regex.test(region)) {\n return outputs.dnsSuffix;\n }\n }\n return defaultPartition.outputs.dnsSuffix;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Default partition for AWS services. This is used when the region is not provided or the region is not recognized.\n *\n * @internal\n */\nconst defaultPartition = {\n id: 'aws',\n outputs: {\n dnsSuffix: 'amazonaws.com',\n },\n regionRegex: '^(us|eu|ap|sa|ca|me|af)\\\\-\\\\w+\\\\-\\\\d+$',\n regions: ['aws-global'],\n};\n/**\n * This data is adapted from the partition file from AWS SDK shared utilities but remove some contents for bundle size\n * concern. Information removed are `dualStackDnsSuffix`, `supportDualStack`, `supportFIPS`, restricted partitions, and\n * list of regions for each partition other than global regions.\n *\n * * Ref: https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints\n * * Ref: https://github.com/aws/aws-sdk-js-v3/blob/0201baef03c2379f1f6f7150b9d401d4b230d488/packages/util-endpoints/src/lib/aws/partitions.json#L1\n *\n * @internal\n */\nconst partitionsInfo = {\n partitions: [\n defaultPartition,\n {\n id: 'aws-cn',\n outputs: {\n dnsSuffix: 'amazonaws.com.cn',\n },\n regionRegex: '^cn\\\\-\\\\w+\\\\-\\\\d+$',\n regions: ['aws-cn-global'],\n },\n ],\n};\n\nexport { defaultPartition, partitionsInfo };\n//# sourceMappingURL=partitions.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Default partition for AWS services. This is used when the region is not provided or the region is not recognized.\n *\n * @internal\n */\nexport const defaultPartition = {\n id: 'aws',\n outputs: {\n dnsSuffix: 'amazonaws.com',\n },\n regionRegex: '^(us|eu|ap|sa|ca|me|af)\\\\-\\\\w+\\\\-\\\\d+$',\n regions: ['aws-global'],\n};\n/**\n * This data is adapted from the partition file from AWS SDK shared utilities but remove some contents for bundle size\n * concern. Information removed are `dualStackDnsSuffix`, `supportDualStack`, `supportFIPS`, restricted partitions, and\n * list of regions for each partition other than global regions.\n *\n * * Ref: https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints\n * * Ref: https://github.com/aws/aws-sdk-js-v3/blob/0201baef03c2379f1f6f7150b9d401d4b230d488/packages/util-endpoints/src/lib/aws/partitions.json#L1\n *\n * @internal\n */\nexport const partitionsInfo = {\n partitions: [\n defaultPartition,\n {\n id: 'aws-cn',\n outputs: {\n dnsSuffix: 'amazonaws.com.cn',\n },\n regionRegex: '^cn\\\\-\\\\w+\\\\-\\\\d+$',\n regions: ['aws-cn-global'],\n },\n ],\n};\n","import { retryMiddleware } from '../middleware/retry/middleware.mjs';\nimport '../../utils/getClientInfo/getClientInfo.mjs';\nimport '../../utils/retry/retry.mjs';\nimport { userAgentMiddleware } from '../middleware/userAgent/middleware.mjs';\nimport { composeTransferHandler } from '../internal/composeTransferHandler.mjs';\nimport { fetchTransferHandler } from './fetch.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst unauthenticatedHandler = composeTransferHandler(fetchTransferHandler, [userAgentMiddleware, retryMiddleware]);\n\nexport { unauthenticatedHandler };\n//# sourceMappingURL=unauthenticated.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { retryMiddleware } from '../middleware/retry';\nimport { userAgentMiddleware } from '../middleware/userAgent';\nimport { composeTransferHandler } from '../internal/composeTransferHandler';\nimport { fetchTransferHandler } from './fetch';\nexport const unauthenticatedHandler = composeTransferHandler(fetchTransferHandler, [userAgentMiddleware, retryMiddleware]);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst DEFAULT_RETRY_ATTEMPTS = 3;\n/**\n * Retry middleware\n */\nconst retryMiddleware = ({ maxAttempts = DEFAULT_RETRY_ATTEMPTS, retryDecider, computeDelay, abortSignal, }) => {\n if (maxAttempts < 1) {\n throw new Error('maxAttempts must be greater than 0');\n }\n return (next, context) => async function retryMiddleware(request) {\n let error;\n let attemptsCount = context.attemptsCount ?? 0;\n let response;\n // When retry is not needed or max attempts is reached, either error or response will be set. This function handles either cases.\n const handleTerminalErrorOrResponse = () => {\n if (response) {\n addOrIncrementMetadataAttempts(response, attemptsCount);\n return response;\n }\n else {\n addOrIncrementMetadataAttempts(error, attemptsCount);\n throw error;\n }\n };\n while (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n try {\n response = await next(request);\n error = undefined;\n }\n catch (e) {\n error = e;\n response = undefined;\n }\n // context.attemptsCount may be updated after calling next handler which may retry the request by itself.\n attemptsCount =\n (context.attemptsCount ?? 0) > attemptsCount\n ? context.attemptsCount ?? 0\n : attemptsCount + 1;\n context.attemptsCount = attemptsCount;\n if (await retryDecider(response, error)) {\n if (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n // prevent sleep for last attempt or cancelled request;\n const delay = computeDelay(attemptsCount);\n await cancellableSleep(delay, abortSignal);\n }\n continue;\n }\n else {\n return handleTerminalErrorOrResponse();\n }\n }\n if (abortSignal?.aborted) {\n throw new Error('Request aborted.');\n }\n else {\n return handleTerminalErrorOrResponse();\n }\n };\n};\nconst cancellableSleep = (timeoutMs, abortSignal) => {\n if (abortSignal?.aborted) {\n return Promise.resolve();\n }\n let timeoutId;\n let sleepPromiseResolveFn;\n const sleepPromise = new Promise(resolve => {\n sleepPromiseResolveFn = resolve;\n timeoutId = setTimeout(resolve, timeoutMs);\n });\n abortSignal?.addEventListener('abort', function cancelSleep(event) {\n clearTimeout(timeoutId);\n abortSignal?.removeEventListener('abort', cancelSleep);\n sleepPromiseResolveFn();\n });\n return sleepPromise;\n};\nconst addOrIncrementMetadataAttempts = (nextHandlerOutput, attempts) => {\n if (Object.prototype.toString.call(nextHandlerOutput) !== '[object Object]') {\n return;\n }\n nextHandlerOutput['$metadata'] = {\n ...(nextHandlerOutput['$metadata'] ?? {}),\n attempts,\n };\n};\n\nexport { retryMiddleware };\n//# sourceMappingURL=middleware.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst DEFAULT_RETRY_ATTEMPTS = 3;\n/**\n * Retry middleware\n */\nexport const retryMiddleware = ({ maxAttempts = DEFAULT_RETRY_ATTEMPTS, retryDecider, computeDelay, abortSignal, }) => {\n if (maxAttempts < 1) {\n throw new Error('maxAttempts must be greater than 0');\n }\n return (next, context) => async function retryMiddleware(request) {\n let error;\n let attemptsCount = context.attemptsCount ?? 0;\n let response;\n // When retry is not needed or max attempts is reached, either error or response will be set. This function handles either cases.\n const handleTerminalErrorOrResponse = () => {\n if (response) {\n addOrIncrementMetadataAttempts(response, attemptsCount);\n return response;\n }\n else {\n addOrIncrementMetadataAttempts(error, attemptsCount);\n throw error;\n }\n };\n while (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n try {\n response = await next(request);\n error = undefined;\n }\n catch (e) {\n error = e;\n response = undefined;\n }\n // context.attemptsCount may be updated after calling next handler which may retry the request by itself.\n attemptsCount =\n (context.attemptsCount ?? 0) > attemptsCount\n ? context.attemptsCount ?? 0\n : attemptsCount + 1;\n context.attemptsCount = attemptsCount;\n if (await retryDecider(response, error)) {\n if (!abortSignal?.aborted && attemptsCount < maxAttempts) {\n // prevent sleep for last attempt or cancelled request;\n const delay = computeDelay(attemptsCount);\n await cancellableSleep(delay, abortSignal);\n }\n continue;\n }\n else {\n return handleTerminalErrorOrResponse();\n }\n }\n if (abortSignal?.aborted) {\n throw new Error('Request aborted.');\n }\n else {\n return handleTerminalErrorOrResponse();\n }\n };\n};\nconst cancellableSleep = (timeoutMs, abortSignal) => {\n if (abortSignal?.aborted) {\n return Promise.resolve();\n }\n let timeoutId;\n let sleepPromiseResolveFn;\n const sleepPromise = new Promise(resolve => {\n sleepPromiseResolveFn = resolve;\n timeoutId = setTimeout(resolve, timeoutMs);\n });\n abortSignal?.addEventListener('abort', function cancelSleep(event) {\n clearTimeout(timeoutId);\n abortSignal?.removeEventListener('abort', cancelSleep);\n sleepPromiseResolveFn();\n });\n return sleepPromise;\n};\nconst addOrIncrementMetadataAttempts = (nextHandlerOutput, attempts) => {\n if (Object.prototype.toString.call(nextHandlerOutput) !== '[object Object]') {\n return;\n }\n nextHandlerOutput['$metadata'] = {\n ...(nextHandlerOutput['$metadata'] ?? {}),\n attempts,\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Middleware injects user agent string to specified header(default to 'x-amz-user-agent'),\n * if the header is not set already.\n *\n * TODO: incorporate new user agent design\n */\nconst userAgentMiddleware = ({ userAgentHeader = 'x-amz-user-agent', userAgentValue = '', }) => next => {\n return async function userAgentMiddleware(request) {\n if (userAgentValue.trim().length === 0) {\n const result = await next(request);\n return result;\n }\n else {\n const headerName = userAgentHeader.toLowerCase();\n request.headers[headerName] = request.headers[headerName]\n ? `${request.headers[headerName]} ${userAgentValue}`\n : userAgentValue;\n const response = await next(request);\n return response;\n }\n };\n};\n\nexport { userAgentMiddleware };\n//# sourceMappingURL=middleware.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Middleware injects user agent string to specified header(default to 'x-amz-user-agent'),\n * if the header is not set already.\n *\n * TODO: incorporate new user agent design\n */\nexport const userAgentMiddleware = ({ userAgentHeader = 'x-amz-user-agent', userAgentValue = '', }) => next => {\n return async function userAgentMiddleware(request) {\n if (userAgentValue.trim().length === 0) {\n const result = await next(request);\n return result;\n }\n else {\n const headerName = userAgentHeader.toLowerCase();\n request.headers[headerName] = request.headers[headerName]\n ? `${request.headers[headerName]} ${userAgentValue}`\n : userAgentValue;\n const response = await next(request);\n return response;\n }\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Compose a transfer handler with a core transfer handler and a list of middleware.\n * @param coreHandler Core transfer handler\n * @param middleware\tList of middleware\n * @returns A transfer handler whose option type is the union of the core\n * \ttransfer handler's option type and the middleware's option type.\n * @internal\n */\nconst composeTransferHandler = (coreHandler, middleware) => (request, options) => {\n const context = {};\n let composedHandler = (request) => coreHandler(request, options);\n for (let i = middleware.length - 1; i >= 0; i--) {\n const m = middleware[i];\n const resolvedMiddleware = m(options);\n composedHandler = resolvedMiddleware(composedHandler, context);\n }\n return composedHandler(request);\n};\n\nexport { composeTransferHandler };\n//# sourceMappingURL=composeTransferHandler.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Compose a transfer handler with a core transfer handler and a list of middleware.\n * @param coreHandler Core transfer handler\n * @param middleware\tList of middleware\n * @returns A transfer handler whose option type is the union of the core\n * \ttransfer handler's option type and the middleware's option type.\n * @internal\n */\nexport const composeTransferHandler = (coreHandler, middleware) => (request, options) => {\n const context = {};\n let composedHandler = (request) => coreHandler(request, options);\n for (let i = middleware.length - 1; i >= 0; i--) {\n const m = middleware[i];\n const resolvedMiddleware = m(options);\n composedHandler = resolvedMiddleware(composedHandler, context);\n }\n return composedHandler(request);\n};\n","import { withMemoization } from '../utils/memoization.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst shouldSendBody = (method) => !['HEAD', 'GET', 'DELETE'].includes(method.toUpperCase());\n// TODO[AllanZhengYP]: we need to provide isCanceledError utility\nconst fetchTransferHandler = async ({ url, method, headers, body }, { abortSignal, cache, withCrossDomainCredentials }) => {\n let resp;\n try {\n resp = await fetch(url, {\n method,\n headers,\n body: shouldSendBody(method) ? body : undefined,\n signal: abortSignal,\n cache,\n credentials: withCrossDomainCredentials ? 'include' : 'same-origin',\n });\n }\n catch (e) {\n // TODO: needs to revise error handling in v6\n // For now this is a thin wrapper over original fetch error similar to cognito-identity-js package.\n // Ref: https://github.com/aws-amplify/amplify-js/blob/4fbc8c0a2be7526aab723579b4c95b552195a80b/packages/amazon-cognito-identity-js/src/Client.js#L103-L108\n if (e instanceof TypeError) {\n throw new Error('Network error');\n }\n throw e;\n }\n const responseHeaders = {};\n resp.headers?.forEach((value, key) => {\n responseHeaders[key.toLowerCase()] = value;\n });\n const httpResponse = {\n statusCode: resp.status,\n headers: responseHeaders,\n body: null,\n };\n // resp.body is a ReadableStream according to Fetch API spec, but React Native\n // does not implement it.\n const bodyWithMixin = Object.assign(resp.body ?? {}, {\n text: withMemoization(() => resp.text()),\n blob: withMemoization(() => resp.blob()),\n json: withMemoization(() => resp.json()),\n });\n return {\n ...httpResponse,\n body: bodyWithMixin,\n };\n};\n\nexport { fetchTransferHandler };\n//# sourceMappingURL=fetch.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { withMemoization } from '../utils/memoization';\nconst shouldSendBody = (method) => !['HEAD', 'GET', 'DELETE'].includes(method.toUpperCase());\n// TODO[AllanZhengYP]: we need to provide isCanceledError utility\nexport const fetchTransferHandler = async ({ url, method, headers, body }, { abortSignal, cache, withCrossDomainCredentials }) => {\n let resp;\n try {\n resp = await fetch(url, {\n method,\n headers,\n body: shouldSendBody(method) ? body : undefined,\n signal: abortSignal,\n cache,\n credentials: withCrossDomainCredentials ? 'include' : 'same-origin',\n });\n }\n catch (e) {\n // TODO: needs to revise error handling in v6\n // For now this is a thin wrapper over original fetch error similar to cognito-identity-js package.\n // Ref: https://github.com/aws-amplify/amplify-js/blob/4fbc8c0a2be7526aab723579b4c95b552195a80b/packages/amazon-cognito-identity-js/src/Client.js#L103-L108\n if (e instanceof TypeError) {\n throw new Error('Network error');\n }\n throw e;\n }\n const responseHeaders = {};\n resp.headers?.forEach((value, key) => {\n responseHeaders[key.toLowerCase()] = value;\n });\n const httpResponse = {\n statusCode: resp.status,\n headers: responseHeaders,\n body: null,\n };\n // resp.body is a ReadableStream according to Fetch API spec, but React Native\n // does not implement it.\n const bodyWithMixin = Object.assign(resp.body ?? {}, {\n text: withMemoization(() => resp.text()),\n blob: withMemoization(() => resp.blob()),\n json: withMemoization(() => resp.json()),\n });\n return {\n ...httpResponse,\n body: bodyWithMixin,\n };\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Cache the payload of a response body. It allows multiple calls to the body,\n * for example, when reading the body in both retry decider and error deserializer.\n * Caching body is allowed here because we call the body accessor(blob(), json(),\n * etc.) when body is small or streaming implementation is not available(RN).\n *\n * @internal\n */\nconst withMemoization = (payloadAccessor) => {\n let cached;\n return () => {\n if (!cached) {\n // Explicitly not awaiting. Intermediate await would add overhead and\n // introduce a possible race in the event that this wrapper is called\n // again before the first `payloadAccessor` call resolves.\n cached = payloadAccessor();\n }\n return cached;\n };\n};\n\nexport { withMemoization };\n//# sourceMappingURL=memoization.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Cache the payload of a response body. It allows multiple calls to the body,\n * for example, when reading the body in both retry decider and error deserializer.\n * Caching body is allowed here because we call the body accessor(blob(), json(),\n * etc.) when body is small or streaming implementation is not available(RN).\n *\n * @internal\n */\nexport const withMemoization = (payloadAccessor) => {\n let cached;\n return () => {\n if (!cached) {\n // Explicitly not awaiting. Intermediate await would add overhead and\n // introduce a possible race in the event that this wrapper is called\n // again before the first `payloadAccessor` call resolves.\n cached = payloadAccessor();\n }\n return cached;\n };\n};\n","import '../../../utils/getClientInfo/getClientInfo.mjs';\nimport { jitteredBackoff as jitteredBackoff$1 } from '../../../utils/retry/jitteredBackoff.mjs';\nimport '../../../utils/retry/retry.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// TODO: [v6] The separate retry utility is used by Data packages now and will replaced by retry middleware.\nconst DEFAULT_MAX_DELAY_MS = 5 * 60 * 1000;\nconst jitteredBackoff = attempt => {\n const delayFunction = jitteredBackoff$1(DEFAULT_MAX_DELAY_MS);\n const delay = delayFunction(attempt);\n // The delayFunction returns false when the delay is greater than the max delay(5 mins).\n // In this case, the retry middleware will delay 5 mins instead, as a ceiling of the delay.\n return delay === false ? DEFAULT_MAX_DELAY_MS : delay;\n};\n\nexport { jitteredBackoff };\n//# sourceMappingURL=jitteredBackoff.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// TODO: [v6] The separate retry utility is used by Data packages now and will replaced by retry middleware.\nimport { jitteredBackoff as jitteredBackoffUtil } from '../../../utils';\nconst DEFAULT_MAX_DELAY_MS = 5 * 60 * 1000;\nexport const jitteredBackoff = attempt => {\n const delayFunction = jitteredBackoffUtil(DEFAULT_MAX_DELAY_MS);\n const delay = delayFunction(attempt);\n // The delayFunction returns false when the delay is greater than the max delay(5 mins).\n // In this case, the retry middleware will delay 5 mins instead, as a ceiling of the delay.\n return delay === false ? DEFAULT_MAX_DELAY_MS : delay;\n};\n","import { MAX_DELAY_MS } from './constants.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @private\n * Internal use of Amplify only\n */\nfunction jitteredBackoff(maxDelayMs = MAX_DELAY_MS) {\n const BASE_TIME_MS = 100;\n const JITTER_FACTOR = 100;\n return attempt => {\n const delay = 2 ** attempt * BASE_TIME_MS + JITTER_FACTOR * Math.random();\n return delay > maxDelayMs ? false : delay;\n };\n}\n\nexport { jitteredBackoff };\n//# sourceMappingURL=jitteredBackoff.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { MAX_DELAY_MS } from './constants';\n/**\n * @private\n * Internal use of Amplify only\n */\nexport function jitteredBackoff(maxDelayMs = MAX_DELAY_MS) {\n const BASE_TIME_MS = 100;\n const JITTER_FACTOR = 100;\n return attempt => {\n const delay = 2 ** attempt * BASE_TIME_MS + JITTER_FACTOR * Math.random();\n return delay > maxDelayMs ? false : delay;\n };\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst MAX_DELAY_MS = 5 * 60 * 1000;\n\nexport { MAX_DELAY_MS };\n//# sourceMappingURL=constants.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const MAX_DELAY_MS = 5 * 60 * 1000;\n","import { isClockSkewError } from './isClockSkewError.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Get retry decider function\n * @param errorParser Function to load JavaScript error from HTTP response\n */\nconst getRetryDecider = (errorParser) => async (response, error) => {\n const parsedError = error ??\n (await errorParser(response)) ??\n undefined;\n const errorCode = parsedError?.['code'];\n const statusCode = response?.statusCode;\n return (isConnectionError(error) ||\n isThrottlingError(statusCode, errorCode) ||\n isClockSkewError(errorCode) ||\n isServerSideError(statusCode, errorCode));\n};\n// reference: https://github.com/aws/aws-sdk-js-v3/blob/ab0e7be36e7e7f8a0c04834357aaad643c7912c3/packages/service-error-classification/src/constants.ts#L22-L37\nconst THROTTLING_ERROR_CODES = [\n 'BandwidthLimitExceeded',\n 'EC2ThrottledException',\n 'LimitExceededException',\n 'PriorRequestNotComplete',\n 'ProvisionedThroughputExceededException',\n 'RequestLimitExceeded',\n 'RequestThrottled',\n 'RequestThrottledException',\n 'SlowDown',\n 'ThrottledException',\n 'Throttling',\n 'ThrottlingException',\n 'TooManyRequestsException',\n];\nconst TIMEOUT_ERROR_CODES = [\n 'TimeoutError',\n 'RequestTimeout',\n 'RequestTimeoutException',\n];\nconst isThrottlingError = (statusCode, errorCode) => statusCode === 429 ||\n (!!errorCode && THROTTLING_ERROR_CODES.includes(errorCode));\nconst isConnectionError = (error) => error?.['name'] === 'Network error';\nconst isServerSideError = (statusCode, errorCode) => (!!statusCode && [500, 502, 503, 504].includes(statusCode)) ||\n (!!errorCode && TIMEOUT_ERROR_CODES.includes(errorCode));\n\nexport { getRetryDecider };\n//# sourceMappingURL=defaultRetryDecider.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { isClockSkewError } from './isClockSkewError';\n/**\n * Get retry decider function\n * @param errorParser Function to load JavaScript error from HTTP response\n */\nexport const getRetryDecider = (errorParser) => async (response, error) => {\n const parsedError = error ??\n (await errorParser(response)) ??\n undefined;\n const errorCode = parsedError?.['code'];\n const statusCode = response?.statusCode;\n return (isConnectionError(error) ||\n isThrottlingError(statusCode, errorCode) ||\n isClockSkewError(errorCode) ||\n isServerSideError(statusCode, errorCode));\n};\n// reference: https://github.com/aws/aws-sdk-js-v3/blob/ab0e7be36e7e7f8a0c04834357aaad643c7912c3/packages/service-error-classification/src/constants.ts#L22-L37\nconst THROTTLING_ERROR_CODES = [\n 'BandwidthLimitExceeded',\n 'EC2ThrottledException',\n 'LimitExceededException',\n 'PriorRequestNotComplete',\n 'ProvisionedThroughputExceededException',\n 'RequestLimitExceeded',\n 'RequestThrottled',\n 'RequestThrottledException',\n 'SlowDown',\n 'ThrottledException',\n 'Throttling',\n 'ThrottlingException',\n 'TooManyRequestsException',\n];\nconst TIMEOUT_ERROR_CODES = [\n 'TimeoutError',\n 'RequestTimeout',\n 'RequestTimeoutException',\n];\nconst isThrottlingError = (statusCode, errorCode) => statusCode === 429 ||\n (!!errorCode && THROTTLING_ERROR_CODES.includes(errorCode));\nconst isConnectionError = (error) => error?.['name'] === 'Network error';\nconst isServerSideError = (statusCode, errorCode) => (!!statusCode && [500, 502, 503, 504].includes(statusCode)) ||\n (!!errorCode && TIMEOUT_ERROR_CODES.includes(errorCode));\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// via https://github.com/aws/aws-sdk-js-v3/blob/ab0e7be36e7e7f8a0c04834357aaad643c7912c3/packages/service-error-classification/src/constants.ts#L8\nconst CLOCK_SKEW_ERROR_CODES = [\n 'AuthFailure',\n 'InvalidSignatureException',\n 'RequestExpired',\n 'RequestInTheFuture',\n 'RequestTimeTooSkewed',\n 'SignatureDoesNotMatch',\n 'BadRequestException', // API Gateway\n];\n/**\n * Given an error code, returns true if it is related to a clock skew error.\n *\n * @param errorCode String representation of some error.\n * @returns True if given error is present in `CLOCK_SKEW_ERROR_CODES`, false otherwise.\n *\n * @internal\n */\nconst isClockSkewError = (errorCode) => !!errorCode && CLOCK_SKEW_ERROR_CODES.includes(errorCode);\n\nexport { isClockSkewError };\n//# sourceMappingURL=isClockSkewError.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// via https://github.com/aws/aws-sdk-js-v3/blob/ab0e7be36e7e7f8a0c04834357aaad643c7912c3/packages/service-error-classification/src/constants.ts#L8\nconst CLOCK_SKEW_ERROR_CODES = [\n 'AuthFailure',\n 'InvalidSignatureException',\n 'RequestExpired',\n 'RequestInTheFuture',\n 'RequestTimeTooSkewed',\n 'SignatureDoesNotMatch',\n 'BadRequestException', // API Gateway\n];\n/**\n * Given an error code, returns true if it is related to a clock skew error.\n *\n * @param errorCode String representation of some error.\n * @returns True if given error is present in `CLOCK_SKEW_ERROR_CODES`, false otherwise.\n *\n * @internal\n */\nexport const isClockSkewError = (errorCode) => !!errorCode && CLOCK_SKEW_ERROR_CODES.includes(errorCode);\n","export * from \"./jsSha256\";\n","import { __awaiter, __generator } from \"tslib\";\nimport { BLOCK_SIZE } from \"./constants\";\nimport { RawSha256 } from \"./RawSha256\";\nimport { isEmptyData, convertToBuffer } from \"@aws-crypto/util\";\nvar Sha256 = /** @class */ (function () {\n function Sha256(secret) {\n this.secret = secret;\n this.hash = new RawSha256();\n this.reset();\n }\n Sha256.prototype.update = function (toHash) {\n if (isEmptyData(toHash) || this.error) {\n return;\n }\n try {\n this.hash.update(convertToBuffer(toHash));\n }\n catch (e) {\n this.error = e;\n }\n };\n /* This synchronous method keeps compatibility\n * with the v2 aws-sdk.\n */\n Sha256.prototype.digestSync = function () {\n if (this.error) {\n throw this.error;\n }\n if (this.outer) {\n if (!this.outer.finished) {\n this.outer.update(this.hash.digest());\n }\n return this.outer.digest();\n }\n return this.hash.digest();\n };\n /* The underlying digest method here is synchronous.\n * To keep the same interface with the other hash functions\n * the default is to expose this as an async method.\n * However, it can sometimes be useful to have a sync method.\n */\n Sha256.prototype.digest = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2 /*return*/, this.digestSync()];\n });\n });\n };\n Sha256.prototype.reset = function () {\n this.hash = new RawSha256();\n if (this.secret) {\n this.outer = new RawSha256();\n var inner = bufferFromSecret(this.secret);\n var outer = new Uint8Array(BLOCK_SIZE);\n outer.set(inner);\n for (var i = 0; i < BLOCK_SIZE; i++) {\n inner[i] ^= 0x36;\n outer[i] ^= 0x5c;\n }\n this.hash.update(inner);\n this.outer.update(outer);\n // overwrite the copied key in memory\n for (var i = 0; i < inner.byteLength; i++) {\n inner[i] = 0;\n }\n }\n };\n return Sha256;\n}());\nexport { Sha256 };\nfunction bufferFromSecret(secret) {\n var input = convertToBuffer(secret);\n if (input.byteLength > BLOCK_SIZE) {\n var bufferHash = new RawSha256();\n bufferHash.update(input);\n input = bufferHash.digest();\n }\n var buffer = new Uint8Array(BLOCK_SIZE);\n buffer.set(input);\n return buffer;\n}\n//# sourceMappingURL=jsSha256.js.map","import { BLOCK_SIZE } from \"./constants\";\nimport { RawSha256 } from \"./RawSha256\";\nimport { Checksum, SourceData } from \"@aws-sdk/types\";\nimport { isEmptyData, convertToBuffer } from \"@aws-crypto/util\";\n\nexport class Sha256 implements Checksum {\n private readonly secret?: SourceData;\n private hash: RawSha256;\n private outer?: RawSha256;\n private error: any;\n\n constructor(secret?: SourceData) {\n this.secret = secret;\n this.hash = new RawSha256();\n this.reset();\n }\n\n update(toHash: SourceData): void {\n if (isEmptyData(toHash) || this.error) {\n return;\n }\n\n try {\n this.hash.update(convertToBuffer(toHash));\n } catch (e) {\n this.error = e;\n }\n }\n\n /* This synchronous method keeps compatibility\n * with the v2 aws-sdk.\n */\n digestSync(): Uint8Array {\n if (this.error) {\n throw this.error;\n }\n\n if (this.outer) {\n if (!this.outer.finished) {\n this.outer.update(this.hash.digest());\n }\n\n return this.outer.digest();\n }\n\n return this.hash.digest();\n }\n\n /* The underlying digest method here is synchronous.\n * To keep the same interface with the other hash functions\n * the default is to expose this as an async method.\n * However, it can sometimes be useful to have a sync method.\n */\n async digest(): Promise {\n return this.digestSync();\n }\n\n reset(): void {\n this.hash = new RawSha256();\n if (this.secret) {\n this.outer = new RawSha256();\n const inner = bufferFromSecret(this.secret);\n const outer = new Uint8Array(BLOCK_SIZE);\n outer.set(inner);\n\n for (let i = 0; i < BLOCK_SIZE; i++) {\n inner[i] ^= 0x36;\n outer[i] ^= 0x5c;\n }\n\n this.hash.update(inner);\n this.outer.update(outer);\n\n // overwrite the copied key in memory\n for (let i = 0; i < inner.byteLength; i++) {\n inner[i] = 0;\n }\n }\n }\n}\n\nfunction bufferFromSecret(secret: SourceData): Uint8Array {\n let input = convertToBuffer(secret);\n\n if (input.byteLength > BLOCK_SIZE) {\n const bufferHash = new RawSha256();\n bufferHash.update(input);\n input = bufferHash.digest();\n }\n\n const buffer = new Uint8Array(BLOCK_SIZE);\n buffer.set(input);\n return buffer;\n}\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, SuppressedError, Symbol */\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 (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\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 __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\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 (g && (g = 0, op[0] && (_ = 0)), _) 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 var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(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, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, 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\n/** @deprecated */\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\n/** @deprecated */\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 __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\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: false } : 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\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\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 (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, 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, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n function next() {\r\n while (env.stack.length) {\r\n var rec = env.stack.pop();\r\n try {\r\n var result = rec.dispose && rec.dispose.call(rec.value);\r\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","/**\n * @internal\n */\nexport var BLOCK_SIZE = 64;\n/**\n * @internal\n */\nexport var DIGEST_LENGTH = 32;\n/**\n * @internal\n */\nexport var KEY = new Uint32Array([\n 0x428a2f98,\n 0x71374491,\n 0xb5c0fbcf,\n 0xe9b5dba5,\n 0x3956c25b,\n 0x59f111f1,\n 0x923f82a4,\n 0xab1c5ed5,\n 0xd807aa98,\n 0x12835b01,\n 0x243185be,\n 0x550c7dc3,\n 0x72be5d74,\n 0x80deb1fe,\n 0x9bdc06a7,\n 0xc19bf174,\n 0xe49b69c1,\n 0xefbe4786,\n 0x0fc19dc6,\n 0x240ca1cc,\n 0x2de92c6f,\n 0x4a7484aa,\n 0x5cb0a9dc,\n 0x76f988da,\n 0x983e5152,\n 0xa831c66d,\n 0xb00327c8,\n 0xbf597fc7,\n 0xc6e00bf3,\n 0xd5a79147,\n 0x06ca6351,\n 0x14292967,\n 0x27b70a85,\n 0x2e1b2138,\n 0x4d2c6dfc,\n 0x53380d13,\n 0x650a7354,\n 0x766a0abb,\n 0x81c2c92e,\n 0x92722c85,\n 0xa2bfe8a1,\n 0xa81a664b,\n 0xc24b8b70,\n 0xc76c51a3,\n 0xd192e819,\n 0xd6990624,\n 0xf40e3585,\n 0x106aa070,\n 0x19a4c116,\n 0x1e376c08,\n 0x2748774c,\n 0x34b0bcb5,\n 0x391c0cb3,\n 0x4ed8aa4a,\n 0x5b9cca4f,\n 0x682e6ff3,\n 0x748f82ee,\n 0x78a5636f,\n 0x84c87814,\n 0x8cc70208,\n 0x90befffa,\n 0xa4506ceb,\n 0xbef9a3f7,\n 0xc67178f2\n]);\n/**\n * @internal\n */\nexport var INIT = [\n 0x6a09e667,\n 0xbb67ae85,\n 0x3c6ef372,\n 0xa54ff53a,\n 0x510e527f,\n 0x9b05688c,\n 0x1f83d9ab,\n 0x5be0cd19\n];\n/**\n * @internal\n */\nexport var MAX_HASHABLE_LENGTH = Math.pow(2, 53) - 1;\n//# sourceMappingURL=constants.js.map","/**\n * @internal\n */\nexport const BLOCK_SIZE: number = 64;\n\n/**\n * @internal\n */\nexport const DIGEST_LENGTH: number = 32;\n\n/**\n * @internal\n */\nexport const KEY = new Uint32Array([\n 0x428a2f98,\n 0x71374491,\n 0xb5c0fbcf,\n 0xe9b5dba5,\n 0x3956c25b,\n 0x59f111f1,\n 0x923f82a4,\n 0xab1c5ed5,\n 0xd807aa98,\n 0x12835b01,\n 0x243185be,\n 0x550c7dc3,\n 0x72be5d74,\n 0x80deb1fe,\n 0x9bdc06a7,\n 0xc19bf174,\n 0xe49b69c1,\n 0xefbe4786,\n 0x0fc19dc6,\n 0x240ca1cc,\n 0x2de92c6f,\n 0x4a7484aa,\n 0x5cb0a9dc,\n 0x76f988da,\n 0x983e5152,\n 0xa831c66d,\n 0xb00327c8,\n 0xbf597fc7,\n 0xc6e00bf3,\n 0xd5a79147,\n 0x06ca6351,\n 0x14292967,\n 0x27b70a85,\n 0x2e1b2138,\n 0x4d2c6dfc,\n 0x53380d13,\n 0x650a7354,\n 0x766a0abb,\n 0x81c2c92e,\n 0x92722c85,\n 0xa2bfe8a1,\n 0xa81a664b,\n 0xc24b8b70,\n 0xc76c51a3,\n 0xd192e819,\n 0xd6990624,\n 0xf40e3585,\n 0x106aa070,\n 0x19a4c116,\n 0x1e376c08,\n 0x2748774c,\n 0x34b0bcb5,\n 0x391c0cb3,\n 0x4ed8aa4a,\n 0x5b9cca4f,\n 0x682e6ff3,\n 0x748f82ee,\n 0x78a5636f,\n 0x84c87814,\n 0x8cc70208,\n 0x90befffa,\n 0xa4506ceb,\n 0xbef9a3f7,\n 0xc67178f2\n]);\n\n/**\n * @internal\n */\nexport const INIT = [\n 0x6a09e667,\n 0xbb67ae85,\n 0x3c6ef372,\n 0xa54ff53a,\n 0x510e527f,\n 0x9b05688c,\n 0x1f83d9ab,\n 0x5be0cd19\n];\n\n/**\n * @internal\n */\nexport const MAX_HASHABLE_LENGTH = 2 ** 53 - 1;\n","import { BLOCK_SIZE, DIGEST_LENGTH, INIT, KEY, MAX_HASHABLE_LENGTH } from \"./constants\";\n/**\n * @internal\n */\nvar RawSha256 = /** @class */ (function () {\n function RawSha256() {\n this.state = Int32Array.from(INIT);\n this.temp = new Int32Array(64);\n this.buffer = new Uint8Array(64);\n this.bufferLength = 0;\n this.bytesHashed = 0;\n /**\n * @internal\n */\n this.finished = false;\n }\n RawSha256.prototype.update = function (data) {\n if (this.finished) {\n throw new Error(\"Attempted to update an already finished hash.\");\n }\n var position = 0;\n var byteLength = data.byteLength;\n this.bytesHashed += byteLength;\n if (this.bytesHashed * 8 > MAX_HASHABLE_LENGTH) {\n throw new Error(\"Cannot hash more than 2^53 - 1 bits\");\n }\n while (byteLength > 0) {\n this.buffer[this.bufferLength++] = data[position++];\n byteLength--;\n if (this.bufferLength === BLOCK_SIZE) {\n this.hashBuffer();\n this.bufferLength = 0;\n }\n }\n };\n RawSha256.prototype.digest = function () {\n if (!this.finished) {\n var bitsHashed = this.bytesHashed * 8;\n var bufferView = new DataView(this.buffer.buffer, this.buffer.byteOffset, this.buffer.byteLength);\n var undecoratedLength = this.bufferLength;\n bufferView.setUint8(this.bufferLength++, 0x80);\n // Ensure the final block has enough room for the hashed length\n if (undecoratedLength % BLOCK_SIZE >= BLOCK_SIZE - 8) {\n for (var i = this.bufferLength; i < BLOCK_SIZE; i++) {\n bufferView.setUint8(i, 0);\n }\n this.hashBuffer();\n this.bufferLength = 0;\n }\n for (var i = this.bufferLength; i < BLOCK_SIZE - 8; i++) {\n bufferView.setUint8(i, 0);\n }\n bufferView.setUint32(BLOCK_SIZE - 8, Math.floor(bitsHashed / 0x100000000), true);\n bufferView.setUint32(BLOCK_SIZE - 4, bitsHashed);\n this.hashBuffer();\n this.finished = true;\n }\n // The value in state is little-endian rather than big-endian, so flip\n // each word into a new Uint8Array\n var out = new Uint8Array(DIGEST_LENGTH);\n for (var i = 0; i < 8; i++) {\n out[i * 4] = (this.state[i] >>> 24) & 0xff;\n out[i * 4 + 1] = (this.state[i] >>> 16) & 0xff;\n out[i * 4 + 2] = (this.state[i] >>> 8) & 0xff;\n out[i * 4 + 3] = (this.state[i] >>> 0) & 0xff;\n }\n return out;\n };\n RawSha256.prototype.hashBuffer = function () {\n var _a = this, buffer = _a.buffer, state = _a.state;\n var state0 = state[0], state1 = state[1], state2 = state[2], state3 = state[3], state4 = state[4], state5 = state[5], state6 = state[6], state7 = state[7];\n for (var i = 0; i < BLOCK_SIZE; i++) {\n if (i < 16) {\n this.temp[i] =\n ((buffer[i * 4] & 0xff) << 24) |\n ((buffer[i * 4 + 1] & 0xff) << 16) |\n ((buffer[i * 4 + 2] & 0xff) << 8) |\n (buffer[i * 4 + 3] & 0xff);\n }\n else {\n var u = this.temp[i - 2];\n var t1_1 = ((u >>> 17) | (u << 15)) ^ ((u >>> 19) | (u << 13)) ^ (u >>> 10);\n u = this.temp[i - 15];\n var t2_1 = ((u >>> 7) | (u << 25)) ^ ((u >>> 18) | (u << 14)) ^ (u >>> 3);\n this.temp[i] =\n ((t1_1 + this.temp[i - 7]) | 0) + ((t2_1 + this.temp[i - 16]) | 0);\n }\n var t1 = ((((((state4 >>> 6) | (state4 << 26)) ^\n ((state4 >>> 11) | (state4 << 21)) ^\n ((state4 >>> 25) | (state4 << 7))) +\n ((state4 & state5) ^ (~state4 & state6))) |\n 0) +\n ((state7 + ((KEY[i] + this.temp[i]) | 0)) | 0)) |\n 0;\n var t2 = ((((state0 >>> 2) | (state0 << 30)) ^\n ((state0 >>> 13) | (state0 << 19)) ^\n ((state0 >>> 22) | (state0 << 10))) +\n ((state0 & state1) ^ (state0 & state2) ^ (state1 & state2))) |\n 0;\n state7 = state6;\n state6 = state5;\n state5 = state4;\n state4 = (state3 + t1) | 0;\n state3 = state2;\n state2 = state1;\n state1 = state0;\n state0 = (t1 + t2) | 0;\n }\n state[0] += state0;\n state[1] += state1;\n state[2] += state2;\n state[3] += state3;\n state[4] += state4;\n state[5] += state5;\n state[6] += state6;\n state[7] += state7;\n };\n return RawSha256;\n}());\nexport { RawSha256 };\n//# sourceMappingURL=RawSha256.js.map","import {\n BLOCK_SIZE,\n DIGEST_LENGTH,\n INIT,\n KEY,\n MAX_HASHABLE_LENGTH\n} from \"./constants\";\n\n/**\n * @internal\n */\nexport class RawSha256 {\n private state: Int32Array = Int32Array.from(INIT);\n private temp: Int32Array = new Int32Array(64);\n private buffer: Uint8Array = new Uint8Array(64);\n private bufferLength: number = 0;\n private bytesHashed: number = 0;\n\n /**\n * @internal\n */\n finished: boolean = false;\n\n update(data: Uint8Array): void {\n if (this.finished) {\n throw new Error(\"Attempted to update an already finished hash.\");\n }\n\n let position = 0;\n let { byteLength } = data;\n this.bytesHashed += byteLength;\n\n if (this.bytesHashed * 8 > MAX_HASHABLE_LENGTH) {\n throw new Error(\"Cannot hash more than 2^53 - 1 bits\");\n }\n\n while (byteLength > 0) {\n this.buffer[this.bufferLength++] = data[position++];\n byteLength--;\n\n if (this.bufferLength === BLOCK_SIZE) {\n this.hashBuffer();\n this.bufferLength = 0;\n }\n }\n }\n\n digest(): Uint8Array {\n if (!this.finished) {\n const bitsHashed = this.bytesHashed * 8;\n const bufferView = new DataView(\n this.buffer.buffer,\n this.buffer.byteOffset,\n this.buffer.byteLength\n );\n\n const undecoratedLength = this.bufferLength;\n bufferView.setUint8(this.bufferLength++, 0x80);\n\n // Ensure the final block has enough room for the hashed length\n if (undecoratedLength % BLOCK_SIZE >= BLOCK_SIZE - 8) {\n for (let i = this.bufferLength; i < BLOCK_SIZE; i++) {\n bufferView.setUint8(i, 0);\n }\n this.hashBuffer();\n this.bufferLength = 0;\n }\n\n for (let i = this.bufferLength; i < BLOCK_SIZE - 8; i++) {\n bufferView.setUint8(i, 0);\n }\n bufferView.setUint32(\n BLOCK_SIZE - 8,\n Math.floor(bitsHashed / 0x100000000),\n true\n );\n bufferView.setUint32(BLOCK_SIZE - 4, bitsHashed);\n\n this.hashBuffer();\n\n this.finished = true;\n }\n\n // The value in state is little-endian rather than big-endian, so flip\n // each word into a new Uint8Array\n const out = new Uint8Array(DIGEST_LENGTH);\n for (let i = 0; i < 8; i++) {\n out[i * 4] = (this.state[i] >>> 24) & 0xff;\n out[i * 4 + 1] = (this.state[i] >>> 16) & 0xff;\n out[i * 4 + 2] = (this.state[i] >>> 8) & 0xff;\n out[i * 4 + 3] = (this.state[i] >>> 0) & 0xff;\n }\n\n return out;\n }\n\n private hashBuffer(): void {\n const { buffer, state } = this;\n\n let state0 = state[0],\n state1 = state[1],\n state2 = state[2],\n state3 = state[3],\n state4 = state[4],\n state5 = state[5],\n state6 = state[6],\n state7 = state[7];\n\n for (let i = 0; i < BLOCK_SIZE; i++) {\n if (i < 16) {\n this.temp[i] =\n ((buffer[i * 4] & 0xff) << 24) |\n ((buffer[i * 4 + 1] & 0xff) << 16) |\n ((buffer[i * 4 + 2] & 0xff) << 8) |\n (buffer[i * 4 + 3] & 0xff);\n } else {\n let u = this.temp[i - 2];\n const t1 =\n ((u >>> 17) | (u << 15)) ^ ((u >>> 19) | (u << 13)) ^ (u >>> 10);\n\n u = this.temp[i - 15];\n const t2 =\n ((u >>> 7) | (u << 25)) ^ ((u >>> 18) | (u << 14)) ^ (u >>> 3);\n\n this.temp[i] =\n ((t1 + this.temp[i - 7]) | 0) + ((t2 + this.temp[i - 16]) | 0);\n }\n\n const t1 =\n ((((((state4 >>> 6) | (state4 << 26)) ^\n ((state4 >>> 11) | (state4 << 21)) ^\n ((state4 >>> 25) | (state4 << 7))) +\n ((state4 & state5) ^ (~state4 & state6))) |\n 0) +\n ((state7 + ((KEY[i] + this.temp[i]) | 0)) | 0)) |\n 0;\n\n const t2 =\n ((((state0 >>> 2) | (state0 << 30)) ^\n ((state0 >>> 13) | (state0 << 19)) ^\n ((state0 >>> 22) | (state0 << 10))) +\n ((state0 & state1) ^ (state0 & state2) ^ (state1 & state2))) |\n 0;\n\n state7 = state6;\n state6 = state5;\n state5 = state4;\n state4 = (state3 + t1) | 0;\n state3 = state2;\n state2 = state1;\n state1 = state0;\n state0 = (t1 + t2) | 0;\n }\n\n state[0] += state0;\n state[1] += state1;\n state[2] += state2;\n state[3] += state3;\n state[4] += state4;\n state[5] += state5;\n state[6] += state6;\n state[7] += state7;\n }\n}\n","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport { convertToBuffer } from \"./convertToBuffer\";\nexport { isEmptyData } from \"./isEmptyData\";\nexport { numToUint8 } from \"./numToUint8\";\nexport { uint32ArrayFrom } from './uint32ArrayFrom';\n//# sourceMappingURL=index.js.map","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nexport { convertToBuffer } from \"./convertToBuffer\";\nexport { isEmptyData } from \"./isEmptyData\";\nexport { numToUint8 } from \"./numToUint8\";\nexport {uint32ArrayFrom} from './uint32ArrayFrom';\n","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { fromUtf8 as fromUtf8Browser } from \"@smithy/util-utf8\";\n// Quick polyfill\nvar fromUtf8 = typeof Buffer !== \"undefined\" && Buffer.from\n ? function (input) { return Buffer.from(input, \"utf8\"); }\n : fromUtf8Browser;\nexport function convertToBuffer(data) {\n // Already a Uint8, do nothing\n if (data instanceof Uint8Array)\n return data;\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n}\n//# sourceMappingURL=convertToBuffer.js.map","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { SourceData } from \"@aws-sdk/types\";\nimport { fromUtf8 as fromUtf8Browser } from \"@smithy/util-utf8\";\n\n// Quick polyfill\nconst fromUtf8 =\n typeof Buffer !== \"undefined\" && Buffer.from\n ? (input: string) => Buffer.from(input, \"utf8\")\n : fromUtf8Browser;\n\nexport function convertToBuffer(data: SourceData): Uint8Array {\n // Already a Uint8, do nothing\n if (data instanceof Uint8Array) return data;\n\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(\n data.buffer,\n data.byteOffset,\n data.byteLength / Uint8Array.BYTES_PER_ELEMENT\n );\n }\n\n return new Uint8Array(data);\n}\n","export * from \"./fromUtf8\";\nexport * from \"./toUint8Array\";\nexport * from \"./toUtf8\";\n","export const fromUtf8 = (input) => new TextEncoder().encode(input);\n","import { fromUtf8 } from \"./fromUtf8\";\nexport const toUint8Array = (data) => {\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n};\n","export const toUtf8 = (input) => new TextDecoder(\"utf-8\").decode(input);\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nvar K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n var arr = new Uint8Array(1)\n var proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n var buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n var valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n var b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(\n value[Symbol.toPrimitive]('string'), encodingOrOffset, length\n )\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n var length = byteLength(string, encoding) | 0\n var buf = createBuffer(length)\n\n var actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n var buf = createBuffer(length)\n for (var i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n var copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n var buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n var buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n Buffer.from(buf).copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n var len = string.length\n var mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return ''\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n var strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (var i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n var limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n var limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n var len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nvar hexSliceLookupTable = (function () {\n var alphabet = '0123456789abcdef'\n var table = new Array(256)\n for (var i = 0; i < 16; ++i) {\n var i16 = i * 16\n for (var j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function isEmptyData(data) {\n if (typeof data === \"string\") {\n return data.length === 0;\n }\n return data.byteLength === 0;\n}\n//# sourceMappingURL=isEmptyData.js.map","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { SourceData } from \"@aws-sdk/types\";\n\nexport function isEmptyData(data: SourceData): boolean {\n if (typeof data === \"string\") {\n return data.length === 0;\n }\n\n return data.byteLength === 0;\n}\n","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function numToUint8(num) {\n return new Uint8Array([\n (num & 0xff000000) >> 24,\n (num & 0x00ff0000) >> 16,\n (num & 0x0000ff00) >> 8,\n num & 0x000000ff,\n ]);\n}\n//# sourceMappingURL=numToUint8.js.map","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nexport function numToUint8(num: number) {\n return new Uint8Array([\n (num & 0xff000000) >> 24,\n (num & 0x00ff0000) >> 16,\n (num & 0x0000ff00) >> 8,\n num & 0x000000ff,\n ]);\n}\n","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// IE 11 does not support Array.from, so we do it manually\nexport function uint32ArrayFrom(a_lookUpTable) {\n if (!Uint32Array.from) {\n var return_array = new Uint32Array(a_lookUpTable.length);\n var a_index = 0;\n while (a_index < a_lookUpTable.length) {\n return_array[a_index] = a_lookUpTable[a_index];\n a_index += 1;\n }\n return return_array;\n }\n return Uint32Array.from(a_lookUpTable);\n}\n//# sourceMappingURL=uint32ArrayFrom.js.map","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\n// IE 11 does not support Array.from, so we do it manually\nexport function uint32ArrayFrom(a_lookUpTable: Array): Uint32Array {\n if (!Uint32Array.from) {\n const return_array = new Uint32Array(a_lookUpTable.length)\n let a_index = 0\n while (a_index < a_lookUpTable.length) {\n return_array[a_index] = a_lookUpTable[a_index]\n a_index += 1\n }\n return return_array\n }\n return Uint32Array.from(a_lookUpTable)\n}\n","const SHORT_TO_HEX = {};\nconst HEX_TO_SHORT = {};\nfor (let i = 0; i < 256; i++) {\n let encodedByte = i.toString(16).toLowerCase();\n if (encodedByte.length === 1) {\n encodedByte = `0${encodedByte}`;\n }\n SHORT_TO_HEX[i] = encodedByte;\n HEX_TO_SHORT[encodedByte] = i;\n}\nexport function fromHex(encoded) {\n if (encoded.length % 2 !== 0) {\n throw new Error(\"Hex encoded strings must have an even number length\");\n }\n const out = new Uint8Array(encoded.length / 2);\n for (let i = 0; i < encoded.length; i += 2) {\n const encodedByte = encoded.slice(i, i + 2).toLowerCase();\n if (encodedByte in HEX_TO_SHORT) {\n out[i / 2] = HEX_TO_SHORT[encodedByte];\n }\n else {\n throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n }\n return out;\n}\nexport function toHex(bytes) {\n let out = \"\";\n for (let i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst AmplifyUrl = URL;\nconst AmplifyUrlSearchParams = URLSearchParams;\n\nexport { AmplifyUrl, AmplifyUrlSearchParams };\n//# sourceMappingURL=index.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst AmplifyUrl = URL;\nconst AmplifyUrlSearchParams = URLSearchParams;\nexport { AmplifyUrl, AmplifyUrlSearchParams };\n","import { parseMetadata } from './responseInfo.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Utility functions for serializing and deserializing of JSON protocol in general(including: REST-JSON, JSON-RPC, etc.)\n */\n/**\n * Error parser for AWS JSON protocol.\n */\nconst parseJsonError = async (response) => {\n if (!response || response.statusCode < 300) {\n return;\n }\n const body = await parseJsonBody(response);\n const sanitizeErrorCode = (rawValue) => {\n const [cleanValue] = rawValue.toString().split(/[\\,\\:]+/);\n if (cleanValue.includes('#')) {\n return cleanValue.split('#')[1];\n }\n return cleanValue;\n };\n const code = sanitizeErrorCode(response.headers['x-amzn-errortype'] ??\n body.code ??\n body.__type ??\n 'UnknownError');\n const message = body.message ?? body.Message ?? 'Unknown error';\n const error = new Error(message);\n return Object.assign(error, {\n name: code,\n $metadata: parseMetadata(response),\n });\n};\n/**\n * Parse JSON response body to JavaScript object.\n */\nconst parseJsonBody = async (response) => {\n if (!response.body) {\n throw new Error('Missing response payload');\n }\n const output = await response.body.json();\n return Object.assign(output, {\n $metadata: parseMetadata(response),\n });\n};\n\nexport { parseJsonBody, parseJsonError };\n//# sourceMappingURL=json.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { parseMetadata } from './responseInfo';\n/**\n * Utility functions for serializing and deserializing of JSON protocol in general(including: REST-JSON, JSON-RPC, etc.)\n */\n/**\n * Error parser for AWS JSON protocol.\n */\nexport const parseJsonError = async (response) => {\n if (!response || response.statusCode < 300) {\n return;\n }\n const body = await parseJsonBody(response);\n const sanitizeErrorCode = (rawValue) => {\n const [cleanValue] = rawValue.toString().split(/[\\,\\:]+/);\n if (cleanValue.includes('#')) {\n return cleanValue.split('#')[1];\n }\n return cleanValue;\n };\n const code = sanitizeErrorCode(response.headers['x-amzn-errortype'] ??\n body.code ??\n body.__type ??\n 'UnknownError');\n const message = body.message ?? body.Message ?? 'Unknown error';\n const error = new Error(message);\n return Object.assign(error, {\n name: code,\n $metadata: parseMetadata(response),\n });\n};\n/**\n * Parse JSON response body to JavaScript object.\n */\nexport const parseJsonBody = async (response) => {\n if (!response.body) {\n throw new Error('Missing response payload');\n }\n const output = await response.body.json();\n return Object.assign(output, {\n $metadata: parseMetadata(response),\n });\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst parseMetadata = (response) => {\n const { headers, statusCode } = response;\n return {\n ...(isMetadataBearer(response) ? response.$metadata : {}),\n httpStatusCode: statusCode,\n requestId: headers['x-amzn-requestid'] ??\n headers['x-amzn-request-id'] ??\n headers['x-amz-request-id'],\n extendedRequestId: headers['x-amz-id-2'],\n cfId: headers['x-amz-cf-id'],\n };\n};\nconst isMetadataBearer = (response) => typeof response?.$metadata === 'object';\n\nexport { parseMetadata };\n//# sourceMappingURL=responseInfo.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const parseMetadata = (response) => {\n const { headers, statusCode } = response;\n return {\n ...(isMetadataBearer(response) ? response.$metadata : {}),\n httpStatusCode: statusCode,\n requestId: headers['x-amzn-requestid'] ??\n headers['x-amzn-request-id'] ??\n headers['x-amz-request-id'],\n extendedRequestId: headers['x-amz-id-2'],\n cfId: headers['x-amz-cf-id'],\n };\n};\nconst isMetadataBearer = (response) => typeof response?.$metadata === 'object';\n","import { Framework } from './types.mjs';\nimport { version } from './version.mjs';\nimport { detectFramework, observeFrameworkChanges } from './detectFramework.mjs';\nimport { getCustomUserAgent } from './customUserAgent.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst BASE_USER_AGENT = `aws-amplify`;\nclass PlatformBuilder {\n constructor() {\n this.userAgent = `${BASE_USER_AGENT}/${version}`;\n }\n get framework() {\n return detectFramework();\n }\n get isReactNative() {\n return (this.framework === Framework.ReactNative ||\n this.framework === Framework.Expo);\n }\n observeFrameworkChanges(fcn) {\n observeFrameworkChanges(fcn);\n }\n}\nconst Platform = new PlatformBuilder();\nconst getAmplifyUserAgentObject = ({ category, action, framework, } = {}) => {\n const userAgent = [[BASE_USER_AGENT, version]];\n if (category) {\n userAgent.push([category, action]);\n }\n userAgent.push(['framework', detectFramework()]);\n if (category && action) {\n const customState = getCustomUserAgent(category, action);\n if (customState) {\n customState.forEach(state => {\n userAgent.push(state);\n });\n }\n }\n return userAgent;\n};\nconst getAmplifyUserAgent = (customUserAgentDetails) => {\n const userAgent = getAmplifyUserAgentObject(customUserAgentDetails);\n const userAgentString = userAgent\n .map(([agentKey, agentValue]) => agentKey && agentValue ? `${agentKey}/${agentValue}` : agentKey)\n .join(' ');\n return userAgentString;\n};\n\nexport { Platform, getAmplifyUserAgent, getAmplifyUserAgentObject };\n//# sourceMappingURL=index.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Framework } from './types';\nimport { version } from './version';\nimport { detectFramework, observeFrameworkChanges } from './detectFramework';\nimport { getCustomUserAgent } from './customUserAgent';\nconst BASE_USER_AGENT = `aws-amplify`;\nclass PlatformBuilder {\n constructor() {\n this.userAgent = `${BASE_USER_AGENT}/${version}`;\n }\n get framework() {\n return detectFramework();\n }\n get isReactNative() {\n return (this.framework === Framework.ReactNative ||\n this.framework === Framework.Expo);\n }\n observeFrameworkChanges(fcn) {\n observeFrameworkChanges(fcn);\n }\n}\nexport const Platform = new PlatformBuilder();\nexport const getAmplifyUserAgentObject = ({ category, action, framework, } = {}) => {\n const userAgent = [[BASE_USER_AGENT, version]];\n if (category) {\n userAgent.push([category, action]);\n }\n userAgent.push(['framework', detectFramework()]);\n if (category && action) {\n const customState = getCustomUserAgent(category, action);\n if (customState) {\n customState.forEach(state => {\n userAgent.push(state);\n });\n }\n }\n return userAgent;\n};\nexport const getAmplifyUserAgent = (customUserAgentDetails) => {\n const userAgent = getAmplifyUserAgentObject(customUserAgentDetails);\n const userAgentString = userAgent\n .map(([agentKey, agentValue]) => agentKey && agentValue ? `${agentKey}/${agentValue}` : agentKey)\n .join(' ');\n return userAgentString;\n};\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nvar Framework;\n(function (Framework) {\n // < 100 - Web frameworks\n Framework[\"WebUnknown\"] = \"0\";\n Framework[\"React\"] = \"1\";\n Framework[\"NextJs\"] = \"2\";\n Framework[\"Angular\"] = \"3\";\n Framework[\"VueJs\"] = \"4\";\n Framework[\"Nuxt\"] = \"5\";\n Framework[\"Svelte\"] = \"6\";\n // 100s - Server side frameworks\n Framework[\"ServerSideUnknown\"] = \"100\";\n Framework[\"ReactSSR\"] = \"101\";\n Framework[\"NextJsSSR\"] = \"102\";\n Framework[\"AngularSSR\"] = \"103\";\n Framework[\"VueJsSSR\"] = \"104\";\n Framework[\"NuxtSSR\"] = \"105\";\n Framework[\"SvelteSSR\"] = \"106\";\n // 200s - Mobile framework\n Framework[\"ReactNative\"] = \"201\";\n Framework[\"Expo\"] = \"202\";\n})(Framework || (Framework = {}));\nvar Category;\n(function (Category) {\n Category[\"API\"] = \"api\";\n Category[\"Auth\"] = \"auth\";\n Category[\"Analytics\"] = \"analytics\";\n Category[\"DataStore\"] = \"datastore\";\n Category[\"Geo\"] = \"geo\";\n Category[\"InAppMessaging\"] = \"inappmessaging\";\n Category[\"Interactions\"] = \"interactions\";\n Category[\"Predictions\"] = \"predictions\";\n Category[\"PubSub\"] = \"pubsub\";\n Category[\"PushNotification\"] = \"pushnotification\";\n Category[\"Storage\"] = \"storage\";\n})(Category || (Category = {}));\nvar AnalyticsAction;\n(function (AnalyticsAction) {\n AnalyticsAction[\"Record\"] = \"1\";\n AnalyticsAction[\"IdentifyUser\"] = \"2\";\n})(AnalyticsAction || (AnalyticsAction = {}));\nvar ApiAction;\n(function (ApiAction) {\n ApiAction[\"GraphQl\"] = \"1\";\n ApiAction[\"Get\"] = \"2\";\n ApiAction[\"Post\"] = \"3\";\n ApiAction[\"Put\"] = \"4\";\n ApiAction[\"Patch\"] = \"5\";\n ApiAction[\"Del\"] = \"6\";\n ApiAction[\"Head\"] = \"7\";\n})(ApiAction || (ApiAction = {}));\nvar AuthAction;\n(function (AuthAction) {\n AuthAction[\"SignUp\"] = \"1\";\n AuthAction[\"ConfirmSignUp\"] = \"2\";\n AuthAction[\"ResendSignUpCode\"] = \"3\";\n AuthAction[\"SignIn\"] = \"4\";\n AuthAction[\"FetchMFAPreference\"] = \"6\";\n AuthAction[\"UpdateMFAPreference\"] = \"7\";\n AuthAction[\"SetUpTOTP\"] = \"10\";\n AuthAction[\"VerifyTOTPSetup\"] = \"11\";\n AuthAction[\"ConfirmSignIn\"] = \"12\";\n AuthAction[\"DeleteUserAttributes\"] = \"15\";\n AuthAction[\"DeleteUser\"] = \"16\";\n AuthAction[\"UpdateUserAttributes\"] = \"17\";\n AuthAction[\"FetchUserAttributes\"] = \"18\";\n AuthAction[\"ConfirmUserAttribute\"] = \"22\";\n AuthAction[\"SignOut\"] = \"26\";\n AuthAction[\"UpdatePassword\"] = \"27\";\n AuthAction[\"ResetPassword\"] = \"28\";\n AuthAction[\"ConfirmResetPassword\"] = \"29\";\n AuthAction[\"FederatedSignIn\"] = \"30\";\n AuthAction[\"RememberDevice\"] = \"32\";\n AuthAction[\"ForgetDevice\"] = \"33\";\n AuthAction[\"FetchDevices\"] = \"34\";\n AuthAction[\"SendUserAttributeVerificationCode\"] = \"35\";\n AuthAction[\"SignInWithRedirect\"] = \"36\";\n})(AuthAction || (AuthAction = {}));\nvar DataStoreAction;\n(function (DataStoreAction) {\n DataStoreAction[\"Subscribe\"] = \"1\";\n DataStoreAction[\"GraphQl\"] = \"2\";\n})(DataStoreAction || (DataStoreAction = {}));\nvar GeoAction;\n(function (GeoAction) {\n GeoAction[\"SearchByText\"] = \"0\";\n GeoAction[\"SearchByCoordinates\"] = \"1\";\n GeoAction[\"SearchForSuggestions\"] = \"2\";\n GeoAction[\"SearchByPlaceId\"] = \"3\";\n GeoAction[\"SaveGeofences\"] = \"4\";\n GeoAction[\"GetGeofence\"] = \"5\";\n GeoAction[\"ListGeofences\"] = \"6\";\n GeoAction[\"DeleteGeofences\"] = \"7\";\n})(GeoAction || (GeoAction = {}));\nvar InAppMessagingAction;\n(function (InAppMessagingAction) {\n InAppMessagingAction[\"SyncMessages\"] = \"1\";\n InAppMessagingAction[\"IdentifyUser\"] = \"2\";\n InAppMessagingAction[\"NotifyMessageInteraction\"] = \"3\";\n})(InAppMessagingAction || (InAppMessagingAction = {}));\nvar InteractionsAction;\n(function (InteractionsAction) {\n InteractionsAction[\"None\"] = \"0\";\n})(InteractionsAction || (InteractionsAction = {}));\nvar PredictionsAction;\n(function (PredictionsAction) {\n PredictionsAction[\"Convert\"] = \"1\";\n PredictionsAction[\"Identify\"] = \"2\";\n PredictionsAction[\"Interpret\"] = \"3\";\n})(PredictionsAction || (PredictionsAction = {}));\nvar PubSubAction;\n(function (PubSubAction) {\n PubSubAction[\"Subscribe\"] = \"1\";\n})(PubSubAction || (PubSubAction = {}));\nvar PushNotificationAction;\n(function (PushNotificationAction) {\n PushNotificationAction[\"InitializePushNotifications\"] = \"1\";\n PushNotificationAction[\"IdentifyUser\"] = \"2\";\n})(PushNotificationAction || (PushNotificationAction = {}));\nvar StorageAction;\n(function (StorageAction) {\n StorageAction[\"UploadData\"] = \"1\";\n StorageAction[\"DownloadData\"] = \"2\";\n StorageAction[\"List\"] = \"3\";\n StorageAction[\"Copy\"] = \"4\";\n StorageAction[\"Remove\"] = \"5\";\n StorageAction[\"GetProperties\"] = \"6\";\n StorageAction[\"GetUrl\"] = \"7\";\n})(StorageAction || (StorageAction = {}));\n\nexport { AnalyticsAction, ApiAction, AuthAction, Category, DataStoreAction, Framework, GeoAction, InAppMessagingAction, InteractionsAction, PredictionsAction, PubSubAction, PushNotificationAction, StorageAction };\n//# sourceMappingURL=types.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport var Framework;\n(function (Framework) {\n // < 100 - Web frameworks\n Framework[\"WebUnknown\"] = \"0\";\n Framework[\"React\"] = \"1\";\n Framework[\"NextJs\"] = \"2\";\n Framework[\"Angular\"] = \"3\";\n Framework[\"VueJs\"] = \"4\";\n Framework[\"Nuxt\"] = \"5\";\n Framework[\"Svelte\"] = \"6\";\n // 100s - Server side frameworks\n Framework[\"ServerSideUnknown\"] = \"100\";\n Framework[\"ReactSSR\"] = \"101\";\n Framework[\"NextJsSSR\"] = \"102\";\n Framework[\"AngularSSR\"] = \"103\";\n Framework[\"VueJsSSR\"] = \"104\";\n Framework[\"NuxtSSR\"] = \"105\";\n Framework[\"SvelteSSR\"] = \"106\";\n // 200s - Mobile framework\n Framework[\"ReactNative\"] = \"201\";\n Framework[\"Expo\"] = \"202\";\n})(Framework || (Framework = {}));\nexport var Category;\n(function (Category) {\n Category[\"API\"] = \"api\";\n Category[\"Auth\"] = \"auth\";\n Category[\"Analytics\"] = \"analytics\";\n Category[\"DataStore\"] = \"datastore\";\n Category[\"Geo\"] = \"geo\";\n Category[\"InAppMessaging\"] = \"inappmessaging\";\n Category[\"Interactions\"] = \"interactions\";\n Category[\"Predictions\"] = \"predictions\";\n Category[\"PubSub\"] = \"pubsub\";\n Category[\"PushNotification\"] = \"pushnotification\";\n Category[\"Storage\"] = \"storage\";\n})(Category || (Category = {}));\nexport var AnalyticsAction;\n(function (AnalyticsAction) {\n AnalyticsAction[\"Record\"] = \"1\";\n AnalyticsAction[\"IdentifyUser\"] = \"2\";\n})(AnalyticsAction || (AnalyticsAction = {}));\nexport var ApiAction;\n(function (ApiAction) {\n ApiAction[\"GraphQl\"] = \"1\";\n ApiAction[\"Get\"] = \"2\";\n ApiAction[\"Post\"] = \"3\";\n ApiAction[\"Put\"] = \"4\";\n ApiAction[\"Patch\"] = \"5\";\n ApiAction[\"Del\"] = \"6\";\n ApiAction[\"Head\"] = \"7\";\n})(ApiAction || (ApiAction = {}));\nexport var AuthAction;\n(function (AuthAction) {\n AuthAction[\"SignUp\"] = \"1\";\n AuthAction[\"ConfirmSignUp\"] = \"2\";\n AuthAction[\"ResendSignUpCode\"] = \"3\";\n AuthAction[\"SignIn\"] = \"4\";\n AuthAction[\"FetchMFAPreference\"] = \"6\";\n AuthAction[\"UpdateMFAPreference\"] = \"7\";\n AuthAction[\"SetUpTOTP\"] = \"10\";\n AuthAction[\"VerifyTOTPSetup\"] = \"11\";\n AuthAction[\"ConfirmSignIn\"] = \"12\";\n AuthAction[\"DeleteUserAttributes\"] = \"15\";\n AuthAction[\"DeleteUser\"] = \"16\";\n AuthAction[\"UpdateUserAttributes\"] = \"17\";\n AuthAction[\"FetchUserAttributes\"] = \"18\";\n AuthAction[\"ConfirmUserAttribute\"] = \"22\";\n AuthAction[\"SignOut\"] = \"26\";\n AuthAction[\"UpdatePassword\"] = \"27\";\n AuthAction[\"ResetPassword\"] = \"28\";\n AuthAction[\"ConfirmResetPassword\"] = \"29\";\n AuthAction[\"FederatedSignIn\"] = \"30\";\n AuthAction[\"RememberDevice\"] = \"32\";\n AuthAction[\"ForgetDevice\"] = \"33\";\n AuthAction[\"FetchDevices\"] = \"34\";\n AuthAction[\"SendUserAttributeVerificationCode\"] = \"35\";\n AuthAction[\"SignInWithRedirect\"] = \"36\";\n})(AuthAction || (AuthAction = {}));\nexport var DataStoreAction;\n(function (DataStoreAction) {\n DataStoreAction[\"Subscribe\"] = \"1\";\n DataStoreAction[\"GraphQl\"] = \"2\";\n})(DataStoreAction || (DataStoreAction = {}));\nexport var GeoAction;\n(function (GeoAction) {\n GeoAction[\"SearchByText\"] = \"0\";\n GeoAction[\"SearchByCoordinates\"] = \"1\";\n GeoAction[\"SearchForSuggestions\"] = \"2\";\n GeoAction[\"SearchByPlaceId\"] = \"3\";\n GeoAction[\"SaveGeofences\"] = \"4\";\n GeoAction[\"GetGeofence\"] = \"5\";\n GeoAction[\"ListGeofences\"] = \"6\";\n GeoAction[\"DeleteGeofences\"] = \"7\";\n})(GeoAction || (GeoAction = {}));\nexport var InAppMessagingAction;\n(function (InAppMessagingAction) {\n InAppMessagingAction[\"SyncMessages\"] = \"1\";\n InAppMessagingAction[\"IdentifyUser\"] = \"2\";\n InAppMessagingAction[\"NotifyMessageInteraction\"] = \"3\";\n})(InAppMessagingAction || (InAppMessagingAction = {}));\nexport var InteractionsAction;\n(function (InteractionsAction) {\n InteractionsAction[\"None\"] = \"0\";\n})(InteractionsAction || (InteractionsAction = {}));\nexport var PredictionsAction;\n(function (PredictionsAction) {\n PredictionsAction[\"Convert\"] = \"1\";\n PredictionsAction[\"Identify\"] = \"2\";\n PredictionsAction[\"Interpret\"] = \"3\";\n})(PredictionsAction || (PredictionsAction = {}));\nexport var PubSubAction;\n(function (PubSubAction) {\n PubSubAction[\"Subscribe\"] = \"1\";\n})(PubSubAction || (PubSubAction = {}));\nexport var PushNotificationAction;\n(function (PushNotificationAction) {\n PushNotificationAction[\"InitializePushNotifications\"] = \"1\";\n PushNotificationAction[\"IdentifyUser\"] = \"2\";\n})(PushNotificationAction || (PushNotificationAction = {}));\nexport var StorageAction;\n(function (StorageAction) {\n StorageAction[\"UploadData\"] = \"1\";\n StorageAction[\"DownloadData\"] = \"2\";\n StorageAction[\"List\"] = \"3\";\n StorageAction[\"Copy\"] = \"4\";\n StorageAction[\"Remove\"] = \"5\";\n StorageAction[\"GetProperties\"] = \"6\";\n StorageAction[\"GetUrl\"] = \"7\";\n})(StorageAction || (StorageAction = {}));\n","// generated by genversion\nconst version = '6.0.15';\n\nexport { version };\n//# sourceMappingURL=version.mjs.map\n","// generated by genversion\nexport const version = '6.0.15';\n","import { Framework } from './types.mjs';\nimport { detect } from './detection/index.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// We want to cache detection since the framework won't change\nlet frameworkCache;\nconst frameworkChangeObservers = [];\n// Setup the detection reset tracking / timeout delays\nlet resetTriggered = false;\nconst SSR_RESET_TIMEOUT = 10; // ms\nconst WEB_RESET_TIMEOUT = 10; // ms\nconst PRIME_FRAMEWORK_DELAY = 1000; // ms\nconst detectFramework = () => {\n if (!frameworkCache) {\n frameworkCache = detect();\n if (resetTriggered) {\n // The final run of detectFramework:\n // Starting from this point, the `frameworkCache` becomes \"final\".\n // So we don't need to notify the observers again so the observer\n // can be removed after the final notice.\n while (frameworkChangeObservers.length) {\n frameworkChangeObservers.pop()?.();\n }\n }\n else {\n // The first run of detectFramework:\n // Every time we update the cache, call each observer function\n frameworkChangeObservers.forEach(fcn => fcn());\n }\n // Retry once for either Unknown type after a delay (explained below)\n resetTimeout(Framework.ServerSideUnknown, SSR_RESET_TIMEOUT);\n resetTimeout(Framework.WebUnknown, WEB_RESET_TIMEOUT);\n }\n return frameworkCache;\n};\n/**\n * @internal Setup observer callback that will be called everytime the framework changes\n */\nconst observeFrameworkChanges = (fcn) => {\n // When the `frameworkCache` won't be updated again, we ignore all incoming\n // observers.\n if (resetTriggered) {\n return;\n }\n frameworkChangeObservers.push(fcn);\n};\nfunction clearCache() {\n frameworkCache = undefined;\n}\n// For a framework type and a delay amount, setup the event to re-detect\n// During the runtime boot, it is possible that framework detection will\n// be triggered before the framework has made modifications to the\n// global/window/etc needed for detection. When no framework is detected\n// we will reset and try again to ensure we don't use a cached\n// non-framework detection result for all requests.\nfunction resetTimeout(framework, delay) {\n if (frameworkCache === framework && !resetTriggered) {\n setTimeout(() => {\n clearCache();\n resetTriggered = true;\n setTimeout(detectFramework, PRIME_FRAMEWORK_DELAY);\n }, delay);\n }\n}\n\nexport { clearCache, detectFramework, frameworkChangeObservers, observeFrameworkChanges };\n//# sourceMappingURL=detectFramework.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Framework } from './types';\nimport { detect } from './detection';\n// We want to cache detection since the framework won't change\nlet frameworkCache;\nexport const frameworkChangeObservers = [];\n// Setup the detection reset tracking / timeout delays\nlet resetTriggered = false;\nconst SSR_RESET_TIMEOUT = 10; // ms\nconst WEB_RESET_TIMEOUT = 10; // ms\nconst PRIME_FRAMEWORK_DELAY = 1000; // ms\nexport const detectFramework = () => {\n if (!frameworkCache) {\n frameworkCache = detect();\n if (resetTriggered) {\n // The final run of detectFramework:\n // Starting from this point, the `frameworkCache` becomes \"final\".\n // So we don't need to notify the observers again so the observer\n // can be removed after the final notice.\n while (frameworkChangeObservers.length) {\n frameworkChangeObservers.pop()?.();\n }\n }\n else {\n // The first run of detectFramework:\n // Every time we update the cache, call each observer function\n frameworkChangeObservers.forEach(fcn => fcn());\n }\n // Retry once for either Unknown type after a delay (explained below)\n resetTimeout(Framework.ServerSideUnknown, SSR_RESET_TIMEOUT);\n resetTimeout(Framework.WebUnknown, WEB_RESET_TIMEOUT);\n }\n return frameworkCache;\n};\n/**\n * @internal Setup observer callback that will be called everytime the framework changes\n */\nexport const observeFrameworkChanges = (fcn) => {\n // When the `frameworkCache` won't be updated again, we ignore all incoming\n // observers.\n if (resetTriggered) {\n return;\n }\n frameworkChangeObservers.push(fcn);\n};\nexport function clearCache() {\n frameworkCache = undefined;\n}\n// For a framework type and a delay amount, setup the event to re-detect\n// During the runtime boot, it is possible that framework detection will\n// be triggered before the framework has made modifications to the\n// global/window/etc needed for detection. When no framework is detected\n// we will reset and try again to ensure we don't use a cached\n// non-framework detection result for all requests.\nfunction resetTimeout(framework, delay) {\n if (frameworkCache === framework && !resetTriggered) {\n setTimeout(() => {\n clearCache();\n resetTriggered = true;\n setTimeout(detectFramework, PRIME_FRAMEWORK_DELAY);\n }, delay);\n }\n}\n","import { Framework } from '../types.mjs';\nimport { reactWebDetect, reactSSRDetect } from './React.mjs';\nimport { vueWebDetect, vueSSRDetect } from './Vue.mjs';\nimport { svelteWebDetect, svelteSSRDetect } from './Svelte.mjs';\nimport { nextWebDetect, nextSSRDetect } from './Next.mjs';\nimport { nuxtWebDetect, nuxtSSRDetect } from './Nuxt.mjs';\nimport { angularWebDetect, angularSSRDetect } from './Angular.mjs';\nimport { reactNativeDetect } from './ReactNative.mjs';\nimport { expoDetect } from './Expo.mjs';\nimport { webDetect } from './Web.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// These are in the order of detection where when both are detectable, the early Framework will be reported\nconst detectionMap = [\n // First, detect mobile\n { platform: Framework.Expo, detectionMethod: expoDetect },\n { platform: Framework.ReactNative, detectionMethod: reactNativeDetect },\n // Next, detect web frameworks\n { platform: Framework.NextJs, detectionMethod: nextWebDetect },\n { platform: Framework.Nuxt, detectionMethod: nuxtWebDetect },\n { platform: Framework.Angular, detectionMethod: angularWebDetect },\n { platform: Framework.React, detectionMethod: reactWebDetect },\n { platform: Framework.VueJs, detectionMethod: vueWebDetect },\n { platform: Framework.Svelte, detectionMethod: svelteWebDetect },\n { platform: Framework.WebUnknown, detectionMethod: webDetect },\n // Last, detect ssr frameworks\n { platform: Framework.NextJsSSR, detectionMethod: nextSSRDetect },\n { platform: Framework.NuxtSSR, detectionMethod: nuxtSSRDetect },\n { platform: Framework.ReactSSR, detectionMethod: reactSSRDetect },\n { platform: Framework.VueJsSSR, detectionMethod: vueSSRDetect },\n { platform: Framework.AngularSSR, detectionMethod: angularSSRDetect },\n { platform: Framework.SvelteSSR, detectionMethod: svelteSSRDetect },\n];\nfunction detect() {\n return (detectionMap.find(detectionEntry => detectionEntry.detectionMethod())\n ?.platform || Framework.ServerSideUnknown);\n}\n\nexport { detect };\n//# sourceMappingURL=index.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Framework } from '../types';\nimport { reactWebDetect, reactSSRDetect } from './React';\nimport { vueWebDetect, vueSSRDetect } from './Vue';\nimport { svelteWebDetect, svelteSSRDetect } from './Svelte';\nimport { nextWebDetect, nextSSRDetect } from './Next';\nimport { nuxtWebDetect, nuxtSSRDetect } from './Nuxt';\nimport { angularWebDetect, angularSSRDetect } from './Angular';\nimport { reactNativeDetect } from './ReactNative';\nimport { expoDetect } from './Expo';\nimport { webDetect } from './Web';\n// These are in the order of detection where when both are detectable, the early Framework will be reported\nconst detectionMap = [\n // First, detect mobile\n { platform: Framework.Expo, detectionMethod: expoDetect },\n { platform: Framework.ReactNative, detectionMethod: reactNativeDetect },\n // Next, detect web frameworks\n { platform: Framework.NextJs, detectionMethod: nextWebDetect },\n { platform: Framework.Nuxt, detectionMethod: nuxtWebDetect },\n { platform: Framework.Angular, detectionMethod: angularWebDetect },\n { platform: Framework.React, detectionMethod: reactWebDetect },\n { platform: Framework.VueJs, detectionMethod: vueWebDetect },\n { platform: Framework.Svelte, detectionMethod: svelteWebDetect },\n { platform: Framework.WebUnknown, detectionMethod: webDetect },\n // Last, detect ssr frameworks\n { platform: Framework.NextJsSSR, detectionMethod: nextSSRDetect },\n { platform: Framework.NuxtSSR, detectionMethod: nuxtSSRDetect },\n { platform: Framework.ReactSSR, detectionMethod: reactSSRDetect },\n { platform: Framework.VueJsSSR, detectionMethod: vueSSRDetect },\n { platform: Framework.AngularSSR, detectionMethod: angularSSRDetect },\n { platform: Framework.SvelteSSR, detectionMethod: svelteSSRDetect },\n];\nexport function detect() {\n return (detectionMap.find(detectionEntry => detectionEntry.detectionMethod())\n ?.platform || Framework.ServerSideUnknown);\n}\n","import { documentExists, processExists } from './helpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with react 18.2 - built using Vite\nfunction reactWebDetect() {\n const elementKeyPrefixedWithReact = (key) => {\n return key.startsWith('_react') || key.startsWith('__react');\n };\n const elementIsReactEnabled = (element) => {\n return Object.keys(element).find(elementKeyPrefixedWithReact);\n };\n const allElementsWithId = () => Array.from(document.querySelectorAll('[id]'));\n return documentExists() && allElementsWithId().some(elementIsReactEnabled);\n}\nfunction reactSSRDetect() {\n return (processExists() &&\n typeof process.env !== 'undefined' &&\n !!Object.keys(process.env).find(key => key.includes('react')));\n}\n// use the some\n\nexport { reactSSRDetect, reactWebDetect };\n//# sourceMappingURL=React.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { documentExists, processExists } from './helpers';\n// Tested with react 18.2 - built using Vite\nexport function reactWebDetect() {\n const elementKeyPrefixedWithReact = (key) => {\n return key.startsWith('_react') || key.startsWith('__react');\n };\n const elementIsReactEnabled = (element) => {\n return Object.keys(element).find(elementKeyPrefixedWithReact);\n };\n const allElementsWithId = () => Array.from(document.querySelectorAll('[id]'));\n return documentExists() && allElementsWithId().some(elementIsReactEnabled);\n}\nexport function reactSSRDetect() {\n return (processExists() &&\n typeof process.env !== 'undefined' &&\n !!Object.keys(process.env).find(key => key.includes('react')));\n}\n// use the some\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst globalExists = () => {\n return typeof global !== 'undefined';\n};\nconst globalThisExists = () => {\n return typeof globalThis !== 'undefined';\n};\nconst windowExists = () => {\n return typeof window !== 'undefined';\n};\nconst documentExists = () => {\n return typeof document !== 'undefined';\n};\nconst processExists = () => {\n return typeof process !== 'undefined';\n};\nconst keyPrefixMatch = (object, prefix) => {\n return !!Object.keys(object).find(key => key.startsWith(prefix));\n};\n\nexport { documentExists, globalExists, globalThisExists, keyPrefixMatch, processExists, windowExists };\n//# sourceMappingURL=helpers.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const globalExists = () => {\n return typeof global !== 'undefined';\n};\nexport const globalThisExists = () => {\n return typeof globalThis !== 'undefined';\n};\nexport const windowExists = () => {\n return typeof window !== 'undefined';\n};\nexport const documentExists = () => {\n return typeof document !== 'undefined';\n};\nexport const processExists = () => {\n return typeof process !== 'undefined';\n};\nexport const keyPrefixMatch = (object, prefix) => {\n return !!Object.keys(object).find(key => key.startsWith(prefix));\n};\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","import { windowExists, keyPrefixMatch, globalExists } from './helpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with vue 3.3.2\nfunction vueWebDetect() {\n return windowExists() && keyPrefixMatch(window, '__VUE');\n}\nfunction vueSSRDetect() {\n return globalExists() && keyPrefixMatch(global, '__VUE');\n}\n\nexport { vueSSRDetect, vueWebDetect };\n//# sourceMappingURL=Vue.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { globalExists, keyPrefixMatch, windowExists } from './helpers';\n// Tested with vue 3.3.2\nexport function vueWebDetect() {\n return windowExists() && keyPrefixMatch(window, '__VUE');\n}\nexport function vueSSRDetect() {\n return globalExists() && keyPrefixMatch(global, '__VUE');\n}\n","import { windowExists, keyPrefixMatch, processExists } from './helpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with svelte 3.59\nfunction svelteWebDetect() {\n return windowExists() && keyPrefixMatch(window, '__SVELTE');\n}\nfunction svelteSSRDetect() {\n return (processExists() &&\n typeof process.env !== 'undefined' &&\n !!Object.keys(process.env).find(key => key.includes('svelte')));\n}\n\nexport { svelteSSRDetect, svelteWebDetect };\n//# sourceMappingURL=Svelte.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { keyPrefixMatch, processExists, windowExists } from './helpers';\n// Tested with svelte 3.59\nexport function svelteWebDetect() {\n return windowExists() && keyPrefixMatch(window, '__SVELTE');\n}\nexport function svelteSSRDetect() {\n return (processExists() &&\n typeof process.env !== 'undefined' &&\n !!Object.keys(process.env).find(key => key.includes('svelte')));\n}\n","import { windowExists, globalExists, keyPrefixMatch } from './helpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with next 13.4 / react 18.2\nfunction nextWebDetect() {\n // @ts-ignore\n return windowExists() && window['next'] && typeof window['next'] === 'object';\n}\nfunction nextSSRDetect() {\n return (globalExists() &&\n (keyPrefixMatch(global, '__next') || keyPrefixMatch(global, '__NEXT')));\n}\n\nexport { nextSSRDetect, nextWebDetect };\n//# sourceMappingURL=Next.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { globalExists, keyPrefixMatch, windowExists } from './helpers';\n// Tested with next 13.4 / react 18.2\nexport function nextWebDetect() {\n // @ts-ignore\n return windowExists() && window['next'] && typeof window['next'] === 'object';\n}\nexport function nextSSRDetect() {\n return (globalExists() &&\n (keyPrefixMatch(global, '__next') || keyPrefixMatch(global, '__NEXT')));\n}\n","import { windowExists, globalExists } from './helpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with nuxt 2.15 / vue 2.7\nfunction nuxtWebDetect() {\n return (windowExists() &&\n // @ts-ignore\n (window['__NUXT__'] !== undefined || window['$nuxt'] !== undefined));\n}\nfunction nuxtSSRDetect() {\n // @ts-ignore\n return globalExists() && typeof global['__NUXT_PATHS__'] !== 'undefined';\n}\n\nexport { nuxtSSRDetect, nuxtWebDetect };\n//# sourceMappingURL=Nuxt.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { globalExists, windowExists } from './helpers';\n// Tested with nuxt 2.15 / vue 2.7\nexport function nuxtWebDetect() {\n return (windowExists() &&\n // @ts-ignore\n (window['__NUXT__'] !== undefined || window['$nuxt'] !== undefined));\n}\nexport function nuxtSSRDetect() {\n // @ts-ignore\n return globalExists() && typeof global['__NUXT_PATHS__'] !== 'undefined';\n}\n","import { documentExists, processExists, windowExists } from './helpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with @angular/core 16.0.0\nfunction angularWebDetect() {\n const angularVersionSetInDocument = Boolean(documentExists() && document.querySelector('[ng-version]'));\n const angularContentSetInWindow = Boolean(\n // @ts-ignore\n windowExists() && typeof window['ng'] !== 'undefined');\n return angularVersionSetInDocument || angularContentSetInWindow;\n}\nfunction angularSSRDetect() {\n return ((processExists() &&\n typeof process.env === 'object' &&\n process.env['npm_lifecycle_script']?.startsWith('ng ')) ||\n false);\n}\n\nexport { angularSSRDetect, angularWebDetect };\n//# sourceMappingURL=Angular.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { documentExists, processExists, windowExists } from './helpers';\n// Tested with @angular/core 16.0.0\nexport function angularWebDetect() {\n const angularVersionSetInDocument = Boolean(documentExists() && document.querySelector('[ng-version]'));\n const angularContentSetInWindow = Boolean(\n // @ts-ignore\n windowExists() && typeof window['ng'] !== 'undefined');\n return angularVersionSetInDocument || angularContentSetInWindow;\n}\nexport function angularSSRDetect() {\n return ((processExists() &&\n typeof process.env === 'object' &&\n process.env['npm_lifecycle_script']?.startsWith('ng ')) ||\n false);\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with react-native 0.17.7\nfunction reactNativeDetect() {\n return (typeof navigator !== 'undefined' &&\n typeof navigator.product !== 'undefined' &&\n navigator.product === 'ReactNative');\n}\n\nexport { reactNativeDetect };\n//# sourceMappingURL=ReactNative.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with react-native 0.17.7\nexport function reactNativeDetect() {\n return (typeof navigator !== 'undefined' &&\n typeof navigator.product !== 'undefined' &&\n navigator.product === 'ReactNative');\n}\n","import { globalExists } from './helpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Tested with expo 48 / react-native 0.71.3\nfunction expoDetect() {\n // @ts-ignore\n return globalExists() && typeof global['expo'] !== 'undefined';\n}\n\nexport { expoDetect };\n//# sourceMappingURL=Expo.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { globalExists } from './helpers';\n// Tested with expo 48 / react-native 0.71.3\nexport function expoDetect() {\n // @ts-ignore\n return globalExists() && typeof global['expo'] !== 'undefined';\n}\n","import { windowExists } from './helpers.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction webDetect() {\n return windowExists();\n}\n\nexport { webDetect };\n//# sourceMappingURL=Web.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { windowExists } from './helpers';\nexport function webDetect() {\n return windowExists();\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Maintains custom user-agent state set by external consumers.\nconst customUserAgentState = {};\n/**\n * Sets custom user agent state which will be appended to applicable requests. Returns a function that can be used to\n * clean up any custom state set with this API.\n *\n * @note\n * This API operates globally. Calling this API multiple times will result in the most recently set values for a\n * particular API being used.\n *\n * @note\n * This utility IS NOT compatible with SSR.\n *\n * @param input - SetCustomUserAgentInput that defines custom state to apply to the specified APIs.\n */\nconst setCustomUserAgent = (input) => {\n // Save custom user-agent state & increment reference counter\n // TODO Remove `any` when we upgrade to TypeScript 5.2, see: https://github.com/microsoft/TypeScript/issues/44373\n customUserAgentState[input.category] = input.apis.reduce((acc, api) => ({\n ...acc,\n [api]: {\n refCount: acc[api]?.refCount ? acc[api].refCount + 1 : 1,\n additionalDetails: input.additionalDetails,\n },\n }), customUserAgentState[input.category] ?? {});\n // Callback that cleans up state for APIs recorded by this call\n let cleanUpCallbackCalled = false;\n const cleanUpCallback = () => {\n // Only allow the cleanup callback to be called once\n if (cleanUpCallbackCalled) {\n return;\n }\n cleanUpCallbackCalled = true;\n input.apis.forEach(api => {\n const apiRefCount = customUserAgentState[input.category][api].refCount;\n if (apiRefCount > 1) {\n customUserAgentState[input.category][api].refCount = apiRefCount - 1;\n }\n else {\n delete customUserAgentState[input.category][api];\n // Clean up category if no more APIs set\n if (!Object.keys(customUserAgentState[input.category]).length) {\n delete customUserAgentState[input.category];\n }\n }\n });\n };\n return cleanUpCallback;\n};\nconst getCustomUserAgent = (category, api) => customUserAgentState[category]?.[api]?.additionalDetails;\n\nexport { getCustomUserAgent, setCustomUserAgent };\n//# sourceMappingURL=customUserAgent.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n// Maintains custom user-agent state set by external consumers.\nconst customUserAgentState = {};\n/**\n * Sets custom user agent state which will be appended to applicable requests. Returns a function that can be used to\n * clean up any custom state set with this API.\n *\n * @note\n * This API operates globally. Calling this API multiple times will result in the most recently set values for a\n * particular API being used.\n *\n * @note\n * This utility IS NOT compatible with SSR.\n *\n * @param input - SetCustomUserAgentInput that defines custom state to apply to the specified APIs.\n */\nexport const setCustomUserAgent = (input) => {\n // Save custom user-agent state & increment reference counter\n // TODO Remove `any` when we upgrade to TypeScript 5.2, see: https://github.com/microsoft/TypeScript/issues/44373\n customUserAgentState[input.category] = input.apis.reduce((acc, api) => ({\n ...acc,\n [api]: {\n refCount: acc[api]?.refCount ? acc[api].refCount + 1 : 1,\n additionalDetails: input.additionalDetails,\n },\n }), customUserAgentState[input.category] ?? {});\n // Callback that cleans up state for APIs recorded by this call\n let cleanUpCallbackCalled = false;\n const cleanUpCallback = () => {\n // Only allow the cleanup callback to be called once\n if (cleanUpCallbackCalled) {\n return;\n }\n cleanUpCallbackCalled = true;\n input.apis.forEach(api => {\n const apiRefCount = customUserAgentState[input.category][api].refCount;\n if (apiRefCount > 1) {\n customUserAgentState[input.category][api].refCount = apiRefCount - 1;\n }\n else {\n delete customUserAgentState[input.category][api];\n // Clean up category if no more APIs set\n if (!Object.keys(customUserAgentState[input.category]).length) {\n delete customUserAgentState[input.category];\n }\n }\n });\n };\n return cleanUpCallback;\n};\nexport const getCustomUserAgent = (category, api) => customUserAgentState[category]?.[api]?.additionalDetails;\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst composeServiceApi = (transferHandler, serializer, deserializer, defaultConfig) => {\n return async (config, input) => {\n const resolvedConfig = {\n ...defaultConfig,\n ...config,\n };\n // We may want to allow different endpoints from given config(other than region) and input.\n // Currently S3 supports additional `useAccelerateEndpoint` option to use accelerate endpoint.\n const endpoint = await resolvedConfig.endpointResolver(resolvedConfig, input);\n // Unlike AWS SDK clients, a serializer should NOT populate the `host` or `content-length` headers.\n // Both of these headers are prohibited per Spec(https://developer.mozilla.org/en-US/docs/Glossary/Forbidden_header_name).\n // They will be populated automatically by browser, or node-fetch polyfill.\n const request = await serializer(input, endpoint);\n const response = await transferHandler(request, {\n ...resolvedConfig,\n });\n return await deserializer(response);\n };\n};\n\nexport { composeServiceApi };\n//# sourceMappingURL=composeServiceApi.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport const composeServiceApi = (transferHandler, serializer, deserializer, defaultConfig) => {\n return async (config, input) => {\n const resolvedConfig = {\n ...defaultConfig,\n ...config,\n };\n // We may want to allow different endpoints from given config(other than region) and input.\n // Currently S3 supports additional `useAccelerateEndpoint` option to use accelerate endpoint.\n const endpoint = await resolvedConfig.endpointResolver(resolvedConfig, input);\n // Unlike AWS SDK clients, a serializer should NOT populate the `host` or `content-length` headers.\n // Both of these headers are prohibited per Spec(https://developer.mozilla.org/en-US/docs/Glossary/Forbidden_header_name).\n // They will be populated automatically by browser, or node-fetch polyfill.\n const request = await serializer(input, endpoint);\n const response = await transferHandler(request, {\n ...resolvedConfig,\n });\n return await deserializer(response);\n };\n};\n","import { AuthError } from '../../../../../errors/AuthError.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction getRegion(userPoolId) {\n const region = userPoolId?.split('_')[0];\n if (!userPoolId ||\n userPoolId.indexOf('_') < 0 ||\n !region ||\n typeof region !== 'string')\n throw new AuthError({\n name: 'InvalidUserPoolId',\n message: 'Invalid user pool id provided.',\n });\n return region;\n}\nfunction getRegionFromIdentityPoolId(identityPoolId) {\n if (!identityPoolId || !identityPoolId.includes(':')) {\n throw new AuthError({\n name: 'InvalidIdentityPoolIdException',\n message: 'Invalid identity pool id provided.',\n recoverySuggestion: 'Make sure a valid identityPoolId is given in the config.',\n });\n }\n return identityPoolId.split(':')[0];\n}\n\nexport { getRegion, getRegionFromIdentityPoolId };\n//# sourceMappingURL=utils.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthError } from '../../../../../errors/AuthError';\nexport function getRegion(userPoolId) {\n const region = userPoolId?.split('_')[0];\n if (!userPoolId ||\n userPoolId.indexOf('_') < 0 ||\n !region ||\n typeof region !== 'string')\n throw new AuthError({\n name: 'InvalidUserPoolId',\n message: 'Invalid user pool id provided.',\n });\n return region;\n}\nexport function getRegionFromIdentityPoolId(identityPoolId) {\n if (!identityPoolId || !identityPoolId.includes(':')) {\n throw new AuthError({\n name: 'InvalidIdentityPoolIdException',\n message: 'Invalid identity pool id provided.',\n recoverySuggestion: 'Make sure a valid identityPoolId is given in the config.',\n });\n }\n return identityPoolId.split(':')[0];\n}\n","import { decodeJWT } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../../../errors/AuthError.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction formLoginsMap(idToken) {\n const issuer = decodeJWT(idToken).payload.iss;\n const res = {};\n if (!issuer) {\n throw new AuthError({\n name: 'InvalidIdTokenException',\n message: 'Invalid Idtoken.',\n });\n }\n let domainName = issuer.replace(/(^\\w+:|^)\\/\\//, '');\n res[domainName] = idToken;\n return res;\n}\n\nexport { formLoginsMap };\n//# sourceMappingURL=utils.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { decodeJWT } from '@aws-amplify/core/internals/utils';\nimport { AuthError } from '../../../errors/AuthError';\nexport function formLoginsMap(idToken) {\n const issuer = decodeJWT(idToken).payload.iss;\n const res = {};\n if (!issuer) {\n throw new AuthError({\n name: 'InvalidIdTokenException',\n message: 'Invalid Idtoken.',\n });\n }\n let domainName = issuer.replace(/(^\\w+:|^)\\/\\//, '');\n res[domainName] = idToken;\n return res;\n}\n","import { defaultConfig, cognitoIdentityTransferHandler, buildHttpRpcRequest, getSharedHeaders } from './base.mjs';\nimport '../../utils/getClientInfo/getClientInfo.mjs';\nimport '../../utils/retry/retry.mjs';\nimport '@aws-crypto/sha256-js';\nimport '@smithy/util-hex-encoding';\nimport { parseMetadata } from '../../clients/serde/responseInfo.mjs';\nimport { parseJsonError, parseJsonBody } from '../../clients/serde/json.mjs';\nimport { composeServiceApi } from '../../clients/internal/composeServiceApi.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst getCredentialsForIdentitySerializer = (input, endpoint) => {\n const headers = getSharedHeaders('GetCredentialsForIdentity');\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst getCredentialsForIdentityDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n throw error;\n }\n else {\n const body = await parseJsonBody(response);\n return {\n IdentityId: body.IdentityId,\n Credentials: deserializeCredentials(body.Credentials),\n $metadata: parseMetadata(response),\n };\n }\n};\nconst deserializeCredentials = ({ AccessKeyId, SecretKey, SessionToken, Expiration, } = {}) => {\n return {\n AccessKeyId,\n SecretKey,\n SessionToken,\n Expiration: Expiration && new Date(Expiration * 1000),\n };\n};\n/**\n * @internal\n */\nconst getCredentialsForIdentity = composeServiceApi(cognitoIdentityTransferHandler, getCredentialsForIdentitySerializer, getCredentialsForIdentityDeserializer, defaultConfig);\n\nexport { getCredentialsForIdentity };\n//# sourceMappingURL=getCredentialsForIdentity.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { buildHttpRpcRequest, cognitoIdentityTransferHandler, defaultConfig, getSharedHeaders, } from './base';\nimport { parseJsonBody, parseJsonError, parseMetadata, } from '../../clients';\nimport { composeServiceApi } from '../../clients/internal';\nconst getCredentialsForIdentitySerializer = (input, endpoint) => {\n const headers = getSharedHeaders('GetCredentialsForIdentity');\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst getCredentialsForIdentityDeserializer = async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n throw error;\n }\n else {\n const body = await parseJsonBody(response);\n return {\n IdentityId: body.IdentityId,\n Credentials: deserializeCredentials(body.Credentials),\n $metadata: parseMetadata(response),\n };\n }\n};\nconst deserializeCredentials = ({ AccessKeyId, SecretKey, SessionToken, Expiration, } = {}) => {\n return {\n AccessKeyId,\n SecretKey,\n SessionToken,\n Expiration: Expiration && new Date(Expiration * 1000),\n };\n};\n/**\n * @internal\n */\nexport const getCredentialsForIdentity = composeServiceApi(cognitoIdentityTransferHandler, getCredentialsForIdentitySerializer, getCredentialsForIdentityDeserializer, defaultConfig);\n","import { AuthError } from '../../../errors/AuthError.mjs';\nimport { TOKEN_REFRESH_EXCEPTION, USER_UNAUTHENTICATED_EXCEPTION, DEVICE_METADATA_NOT_FOUND_EXCEPTION } from '../../../errors/constants.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction isTypeUserPoolConfig(authConfig) {\n if (authConfig &&\n authConfig.Cognito.userPoolId &&\n authConfig.Cognito.userPoolClientId) {\n return true;\n }\n return false;\n}\nfunction assertAuthTokens(tokens) {\n if (!tokens || !tokens.accessToken) {\n throw new AuthError({\n name: USER_UNAUTHENTICATED_EXCEPTION,\n message: 'User needs to be authenticated to call this API.',\n recoverySuggestion: 'Sign in before calling this API again.',\n });\n }\n}\nfunction assertIdTokenInAuthTokens(tokens) {\n if (!tokens || !tokens.idToken) {\n throw new AuthError({\n name: USER_UNAUTHENTICATED_EXCEPTION,\n message: 'User needs to be authenticated to call this API.',\n recoverySuggestion: 'Sign in before calling this API again.',\n });\n }\n}\nconst oAuthTokenRefreshException = new AuthError({\n name: TOKEN_REFRESH_EXCEPTION,\n message: `Token refresh is not supported when authenticated with the 'implicit grant' (token) oauth flow. \n\tPlease change your oauth configuration to use 'code grant' flow.`,\n recoverySuggestion: `Please logout and change your Amplify configuration to use \"code grant\" flow. \n\tE.g { responseType: 'code' }`,\n});\nconst tokenRefreshException = new AuthError({\n name: USER_UNAUTHENTICATED_EXCEPTION,\n message: 'User needs to be authenticated to call this API.',\n recoverySuggestion: 'Sign in before calling this API again.',\n});\nfunction assertAuthTokensWithRefreshToken(tokens) {\n if (isAuthenticatedWithImplicitOauthFlow(tokens)) {\n throw oAuthTokenRefreshException;\n }\n if (!isAuthenticatedWithRefreshToken(tokens)) {\n throw tokenRefreshException;\n }\n}\nfunction assertDeviceMetadata(deviceMetadata) {\n if (!deviceMetadata ||\n !deviceMetadata.deviceKey ||\n !deviceMetadata.deviceGroupKey ||\n !deviceMetadata.randomPassword) {\n throw new AuthError({\n name: DEVICE_METADATA_NOT_FOUND_EXCEPTION,\n message: 'Either deviceKey, deviceGroupKey or secretPassword were not found during the sign-in process.',\n recoverySuggestion: 'Make sure to not clear storage after calling the signIn API.',\n });\n }\n}\nconst OAuthStorageKeys = {\n inflightOAuth: 'inflightOAuth',\n oauthSignIn: 'oauthSignIn',\n oauthPKCE: 'oauthPKCE',\n oauthState: 'oauthState',\n};\nfunction isAuthenticated(tokens) {\n return tokens?.accessToken || tokens?.idToken;\n}\nfunction isAuthenticatedWithRefreshToken(tokens) {\n return isAuthenticated(tokens) && tokens?.refreshToken;\n}\nfunction isAuthenticatedWithImplicitOauthFlow(tokens) {\n return isAuthenticated(tokens) && !tokens?.refreshToken;\n}\n\nexport { OAuthStorageKeys, assertAuthTokens, assertAuthTokensWithRefreshToken, assertDeviceMetadata, assertIdTokenInAuthTokens, isTypeUserPoolConfig, oAuthTokenRefreshException, tokenRefreshException };\n//# sourceMappingURL=types.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthError } from '../../../errors/AuthError';\nimport { DEVICE_METADATA_NOT_FOUND_EXCEPTION, TOKEN_REFRESH_EXCEPTION, USER_UNAUTHENTICATED_EXCEPTION, } from '../../../errors/constants';\nexport function isTypeUserPoolConfig(authConfig) {\n if (authConfig &&\n authConfig.Cognito.userPoolId &&\n authConfig.Cognito.userPoolClientId) {\n return true;\n }\n return false;\n}\nexport function assertAuthTokens(tokens) {\n if (!tokens || !tokens.accessToken) {\n throw new AuthError({\n name: USER_UNAUTHENTICATED_EXCEPTION,\n message: 'User needs to be authenticated to call this API.',\n recoverySuggestion: 'Sign in before calling this API again.',\n });\n }\n}\nexport function assertIdTokenInAuthTokens(tokens) {\n if (!tokens || !tokens.idToken) {\n throw new AuthError({\n name: USER_UNAUTHENTICATED_EXCEPTION,\n message: 'User needs to be authenticated to call this API.',\n recoverySuggestion: 'Sign in before calling this API again.',\n });\n }\n}\nexport const oAuthTokenRefreshException = new AuthError({\n name: TOKEN_REFRESH_EXCEPTION,\n message: `Token refresh is not supported when authenticated with the 'implicit grant' (token) oauth flow. \n\tPlease change your oauth configuration to use 'code grant' flow.`,\n recoverySuggestion: `Please logout and change your Amplify configuration to use \"code grant\" flow. \n\tE.g { responseType: 'code' }`,\n});\nexport const tokenRefreshException = new AuthError({\n name: USER_UNAUTHENTICATED_EXCEPTION,\n message: 'User needs to be authenticated to call this API.',\n recoverySuggestion: 'Sign in before calling this API again.',\n});\nexport function assertAuthTokensWithRefreshToken(tokens) {\n if (isAuthenticatedWithImplicitOauthFlow(tokens)) {\n throw oAuthTokenRefreshException;\n }\n if (!isAuthenticatedWithRefreshToken(tokens)) {\n throw tokenRefreshException;\n }\n}\nexport function assertDeviceMetadata(deviceMetadata) {\n if (!deviceMetadata ||\n !deviceMetadata.deviceKey ||\n !deviceMetadata.deviceGroupKey ||\n !deviceMetadata.randomPassword) {\n throw new AuthError({\n name: DEVICE_METADATA_NOT_FOUND_EXCEPTION,\n message: 'Either deviceKey, deviceGroupKey or secretPassword were not found during the sign-in process.',\n recoverySuggestion: 'Make sure to not clear storage after calling the signIn API.',\n });\n }\n}\nexport const OAuthStorageKeys = {\n inflightOAuth: 'inflightOAuth',\n oauthSignIn: 'oauthSignIn',\n oauthPKCE: 'oauthPKCE',\n oauthState: 'oauthState',\n};\nfunction isAuthenticated(tokens) {\n return tokens?.accessToken || tokens?.idToken;\n}\nfunction isAuthenticatedWithRefreshToken(tokens) {\n return isAuthenticated(tokens) && tokens?.refreshToken;\n}\nfunction isAuthenticatedWithImplicitOauthFlow(tokens) {\n return isAuthenticated(tokens) && !tokens?.refreshToken;\n}\n","import { AuthError } from './AuthError.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst USER_UNAUTHENTICATED_EXCEPTION = 'UserUnAuthenticatedException';\nconst USER_ALREADY_AUTHENTICATED_EXCEPTION = 'UserAlreadyAuthenticatedException';\nconst DEVICE_METADATA_NOT_FOUND_EXCEPTION = 'DeviceMetadataNotFoundException';\nconst AUTO_SIGN_IN_EXCEPTION = 'AutoSignInException';\nconst INVALID_REDIRECT_EXCEPTION = 'InvalidRedirectException';\nconst invalidRedirectException = new AuthError({\n name: INVALID_REDIRECT_EXCEPTION,\n message: 'signInRedirect or signOutRedirect had an invalid format or was not found.',\n recoverySuggestion: 'Please make sure the signIn/Out redirect in your oauth config is valid.',\n});\nconst INVALID_ORIGIN_EXCEPTION = 'InvalidOriginException';\nconst invalidOriginException = new AuthError({\n name: INVALID_ORIGIN_EXCEPTION,\n message: 'redirect is coming from a different origin. The oauth flow needs to be initiated from the same origin',\n recoverySuggestion: 'Please call signInWithRedirect from the same origin.',\n});\nconst OAUTH_SIGNOUT_EXCEPTION = 'OAuthSignOutException';\nconst TOKEN_REFRESH_EXCEPTION = 'TokenRefreshException';\n\nexport { AUTO_SIGN_IN_EXCEPTION, DEVICE_METADATA_NOT_FOUND_EXCEPTION, INVALID_ORIGIN_EXCEPTION, INVALID_REDIRECT_EXCEPTION, OAUTH_SIGNOUT_EXCEPTION, TOKEN_REFRESH_EXCEPTION, USER_ALREADY_AUTHENTICATED_EXCEPTION, USER_UNAUTHENTICATED_EXCEPTION, invalidOriginException, invalidRedirectException };\n//# sourceMappingURL=constants.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthError } from './AuthError';\nexport const USER_UNAUTHENTICATED_EXCEPTION = 'UserUnAuthenticatedException';\nexport const USER_ALREADY_AUTHENTICATED_EXCEPTION = 'UserAlreadyAuthenticatedException';\nexport const DEVICE_METADATA_NOT_FOUND_EXCEPTION = 'DeviceMetadataNotFoundException';\nexport const AUTO_SIGN_IN_EXCEPTION = 'AutoSignInException';\nexport const INVALID_REDIRECT_EXCEPTION = 'InvalidRedirectException';\nexport const invalidRedirectException = new AuthError({\n name: INVALID_REDIRECT_EXCEPTION,\n message: 'signInRedirect or signOutRedirect had an invalid format or was not found.',\n recoverySuggestion: 'Please make sure the signIn/Out redirect in your oauth config is valid.',\n});\nexport const INVALID_ORIGIN_EXCEPTION = 'InvalidOriginException';\nexport const invalidOriginException = new AuthError({\n name: INVALID_ORIGIN_EXCEPTION,\n message: 'redirect is coming from a different origin. The oauth flow needs to be initiated from the same origin',\n recoverySuggestion: 'Please call signInWithRedirect from the same origin.',\n});\nexport const OAUTH_SIGNOUT_EXCEPTION = 'OAuthSignOutException';\nexport const TOKEN_REFRESH_EXCEPTION = 'TokenRefreshException';\n","import { CognitoUserPoolsTokenProvider } from './CognitoUserPoolsTokenProvider.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * The default provider for the JWT access token and ID token issued from the configured Cognito user pool. It manages\n * the refresh and storage of the tokens. It stores the tokens in `window.localStorage` if available, and falls back to\n * in-memory storage if not.\n */\nconst cognitoUserPoolsTokenProvider = new CognitoUserPoolsTokenProvider();\nconst tokenOrchestrator = cognitoUserPoolsTokenProvider.tokenOrchestrator;\n\nexport { cognitoUserPoolsTokenProvider, tokenOrchestrator };\n//# sourceMappingURL=tokenProvider.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { CognitoUserPoolsTokenProvider } from './CognitoUserPoolsTokenProvider';\n/**\n * The default provider for the JWT access token and ID token issued from the configured Cognito user pool. It manages\n * the refresh and storage of the tokens. It stores the tokens in `window.localStorage` if available, and falls back to\n * in-memory storage if not.\n */\nexport const cognitoUserPoolsTokenProvider = new CognitoUserPoolsTokenProvider();\nexport const tokenOrchestrator = cognitoUserPoolsTokenProvider.tokenOrchestrator;\n","import { defaultStorage } from '@aws-amplify/core';\nimport { refreshAuthTokens } from '../utils/refreshAuthTokens.mjs';\nimport { DefaultTokenStore } from './TokenStore.mjs';\nimport { TokenOrchestrator } from './TokenOrchestrator.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass CognitoUserPoolsTokenProvider {\n constructor() {\n this.authTokenStore = new DefaultTokenStore();\n this.authTokenStore.setKeyValueStorage(defaultStorage);\n this.tokenOrchestrator = new TokenOrchestrator();\n this.tokenOrchestrator.setAuthTokenStore(this.authTokenStore);\n this.tokenOrchestrator.setTokenRefresher(refreshAuthTokens);\n }\n getTokens({ forceRefresh } = { forceRefresh: false }) {\n return this.tokenOrchestrator.getTokens({ forceRefresh });\n }\n setKeyValueStorage(keyValueStorage) {\n this.authTokenStore.setKeyValueStorage(keyValueStorage);\n }\n setWaitForInflightOAuth(waitForInflightOAuth) {\n this.tokenOrchestrator.setWaitForInflightOAuth(waitForInflightOAuth);\n }\n setAuthConfig(authConfig) {\n this.authTokenStore.setAuthConfig(authConfig);\n this.tokenOrchestrator.setAuthConfig(authConfig);\n }\n}\n\nexport { CognitoUserPoolsTokenProvider };\n//# sourceMappingURL=CognitoUserPoolsTokenProvider.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { defaultStorage, } from '@aws-amplify/core';\nimport { refreshAuthTokens } from '../utils/refreshAuthTokens';\nimport { DefaultTokenStore } from './TokenStore';\nimport { TokenOrchestrator } from './TokenOrchestrator';\nexport class CognitoUserPoolsTokenProvider {\n constructor() {\n this.authTokenStore = new DefaultTokenStore();\n this.authTokenStore.setKeyValueStorage(defaultStorage);\n this.tokenOrchestrator = new TokenOrchestrator();\n this.tokenOrchestrator.setAuthTokenStore(this.authTokenStore);\n this.tokenOrchestrator.setTokenRefresher(refreshAuthTokens);\n }\n getTokens({ forceRefresh } = { forceRefresh: false }) {\n return this.tokenOrchestrator.getTokens({ forceRefresh });\n }\n setKeyValueStorage(keyValueStorage) {\n this.authTokenStore.setKeyValueStorage(keyValueStorage);\n }\n setWaitForInflightOAuth(waitForInflightOAuth) {\n this.tokenOrchestrator.setWaitForInflightOAuth(waitForInflightOAuth);\n }\n setAuthConfig(authConfig) {\n this.authTokenStore.setAuthConfig(authConfig);\n this.tokenOrchestrator.setAuthConfig(authConfig);\n }\n}\n","import { deDupeAsyncFunction, assertTokenProviderConfig, decodeJWT } from '@aws-amplify/core/internals/utils';\nimport { initiateAuth } from './clients/CognitoIdentityProvider/index.mjs';\nimport { getRegion } from './clients/CognitoIdentityProvider/utils.mjs';\nimport { assertAuthTokensWithRefreshToken } from './types.mjs';\nimport { AuthError } from '../../../errors/AuthError.mjs';\nimport { getUserContextData } from './userContextData.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst refreshAuthTokensFunction = async ({ tokens, authConfig, username, }) => {\n assertTokenProviderConfig(authConfig?.Cognito);\n const region = getRegion(authConfig.Cognito.userPoolId);\n assertAuthTokensWithRefreshToken(tokens);\n const refreshTokenString = tokens.refreshToken;\n const AuthParameters = {\n REFRESH_TOKEN: refreshTokenString,\n };\n if (tokens.deviceMetadata?.deviceKey) {\n AuthParameters['DEVICE_KEY'] = tokens.deviceMetadata.deviceKey;\n }\n const UserContextData = getUserContextData({\n username,\n userPoolId: authConfig.Cognito.userPoolId,\n userPoolClientId: authConfig.Cognito.userPoolClientId,\n });\n const { AuthenticationResult } = await initiateAuth({ region }, {\n ClientId: authConfig?.Cognito?.userPoolClientId,\n AuthFlow: 'REFRESH_TOKEN_AUTH',\n AuthParameters,\n UserContextData,\n });\n const accessToken = decodeJWT(AuthenticationResult?.AccessToken ?? '');\n const idToken = AuthenticationResult?.IdToken\n ? decodeJWT(AuthenticationResult.IdToken)\n : undefined;\n const iat = accessToken.payload.iat;\n // This should never happen. If it does, it's a bug from the service.\n if (!iat) {\n throw new AuthError({\n name: 'iatNotFoundException',\n message: 'iat not found in access token',\n });\n }\n const clockDrift = iat * 1000 - new Date().getTime();\n return {\n accessToken,\n idToken,\n clockDrift,\n refreshToken: refreshTokenString,\n username,\n };\n};\nconst refreshAuthTokens = deDupeAsyncFunction(refreshAuthTokensFunction);\n\nexport { refreshAuthTokens };\n//# sourceMappingURL=refreshAuthTokens.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { assertTokenProviderConfig, decodeJWT, deDupeAsyncFunction, } from '@aws-amplify/core/internals/utils';\nimport { initiateAuth } from '../utils/clients/CognitoIdentityProvider';\nimport { getRegion } from '../utils/clients/CognitoIdentityProvider/utils';\nimport { assertAuthTokensWithRefreshToken } from '../utils/types';\nimport { AuthError } from '../../../errors/AuthError';\nimport { getUserContextData } from './userContextData';\nconst refreshAuthTokensFunction = async ({ tokens, authConfig, username, }) => {\n assertTokenProviderConfig(authConfig?.Cognito);\n const region = getRegion(authConfig.Cognito.userPoolId);\n assertAuthTokensWithRefreshToken(tokens);\n const refreshTokenString = tokens.refreshToken;\n const AuthParameters = {\n REFRESH_TOKEN: refreshTokenString,\n };\n if (tokens.deviceMetadata?.deviceKey) {\n AuthParameters['DEVICE_KEY'] = tokens.deviceMetadata.deviceKey;\n }\n const UserContextData = getUserContextData({\n username,\n userPoolId: authConfig.Cognito.userPoolId,\n userPoolClientId: authConfig.Cognito.userPoolClientId,\n });\n const { AuthenticationResult } = await initiateAuth({ region }, {\n ClientId: authConfig?.Cognito?.userPoolClientId,\n AuthFlow: 'REFRESH_TOKEN_AUTH',\n AuthParameters,\n UserContextData,\n });\n const accessToken = decodeJWT(AuthenticationResult?.AccessToken ?? '');\n const idToken = AuthenticationResult?.IdToken\n ? decodeJWT(AuthenticationResult.IdToken)\n : undefined;\n const iat = accessToken.payload.iat;\n // This should never happen. If it does, it's a bug from the service.\n if (!iat) {\n throw new AuthError({\n name: 'iatNotFoundException',\n message: 'iat not found in access token',\n });\n }\n const clockDrift = iat * 1000 - new Date().getTime();\n return {\n accessToken,\n idToken,\n clockDrift,\n refreshToken: refreshTokenString,\n username,\n };\n};\nexport const refreshAuthTokens = deDupeAsyncFunction(refreshAuthTokensFunction);\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * returns in-flight promise if there is one\n *\n * @param asyncFunction - asyncFunction to be deduped.\n * @returns - the return type of the callback\n */\nconst deDupeAsyncFunction = (asyncFunction) => {\n let inflightPromise;\n return async (...args) => {\n if (inflightPromise)\n return inflightPromise;\n inflightPromise = new Promise(async (resolve, reject) => {\n try {\n const result = await asyncFunction(...args);\n resolve(result);\n }\n catch (error) {\n reject(error);\n }\n finally {\n inflightPromise = undefined;\n }\n });\n return inflightPromise;\n };\n};\n\nexport { deDupeAsyncFunction };\n//# sourceMappingURL=deDupeAsyncFunction.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * returns in-flight promise if there is one\n *\n * @param asyncFunction - asyncFunction to be deduped.\n * @returns - the return type of the callback\n */\nexport const deDupeAsyncFunction = (asyncFunction) => {\n let inflightPromise;\n return async (...args) => {\n if (inflightPromise)\n return inflightPromise;\n inflightPromise = new Promise(async (resolve, reject) => {\n try {\n const result = await asyncFunction(...args);\n resolve(result);\n }\n catch (error) {\n reject(error);\n }\n finally {\n inflightPromise = undefined;\n }\n });\n return inflightPromise;\n };\n};\n","import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { cognitoUserPoolTransferHandler, defaultConfig, buildHttpRpcRequest, getSharedHeaders } from './base.mjs';\nimport { parseJsonError, parseJsonBody } from '@aws-amplify/core/internals/aws-client-utils';\nimport { assertServiceError } from '../../../../../errors/utils/assertServiceError.mjs';\nimport { AuthError } from '../../../../../errors/AuthError.mjs';\n\nconst buildUserPoolSerializer = (operation) => (input, endpoint) => {\n const headers = getSharedHeaders(operation);\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst buildUserPoolDeserializer = () => {\n return async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n assertServiceError(error);\n throw new AuthError({ name: error.name, message: error.message });\n }\n else {\n const body = await parseJsonBody(response);\n return body;\n }\n };\n};\nconst handleEmptyResponseDeserializer = () => {\n return async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n assertServiceError(error);\n throw new AuthError({ name: error.name, message: error.message });\n }\n else {\n return undefined;\n }\n };\n};\nconst initiateAuth = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('InitiateAuth'), buildUserPoolDeserializer(), defaultConfig);\nconst revokeToken = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('RevokeToken'), buildUserPoolDeserializer(), defaultConfig);\nconst signUp = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('SignUp'), buildUserPoolDeserializer(), defaultConfig);\nconst confirmSignUp = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ConfirmSignUp'), buildUserPoolDeserializer(), defaultConfig);\nconst forgotPassword = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ForgotPassword'), buildUserPoolDeserializer(), defaultConfig);\nconst confirmForgotPassword = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ConfirmForgotPassword'), buildUserPoolDeserializer(), defaultConfig);\nconst respondToAuthChallenge = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('RespondToAuthChallenge'), buildUserPoolDeserializer(), defaultConfig);\nconst resendConfirmationCode = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ResendConfirmationCode'), buildUserPoolDeserializer(), defaultConfig);\nconst verifySoftwareToken = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('VerifySoftwareToken'), buildUserPoolDeserializer(), defaultConfig);\nconst associateSoftwareToken = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('AssociateSoftwareToken'), buildUserPoolDeserializer(), defaultConfig);\nconst setUserMFAPreference = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('SetUserMFAPreference'), buildUserPoolDeserializer(), defaultConfig);\nconst getUser = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('GetUser'), buildUserPoolDeserializer(), defaultConfig);\nconst changePassword = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ChangePassword'), buildUserPoolDeserializer(), defaultConfig);\nconst confirmDevice = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ConfirmDevice'), buildUserPoolDeserializer(), defaultConfig);\nconst forgetDevice = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ForgetDevice'), handleEmptyResponseDeserializer(), defaultConfig);\nconst deleteUser = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('DeleteUser'), handleEmptyResponseDeserializer(), defaultConfig);\nconst getUserAttributeVerificationCode = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('GetUserAttributeVerificationCode'), buildUserPoolDeserializer(), defaultConfig);\nconst globalSignOut = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('GlobalSignOut'), buildUserPoolDeserializer(), defaultConfig);\nconst updateUserAttributes = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('UpdateUserAttributes'), buildUserPoolDeserializer(), defaultConfig);\nconst verifyUserAttribute = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('VerifyUserAttribute'), buildUserPoolDeserializer(), defaultConfig);\nconst updateDeviceStatus = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('UpdateDeviceStatus'), buildUserPoolDeserializer(), defaultConfig);\nconst listDevices = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ListDevices'), buildUserPoolDeserializer(), defaultConfig);\nconst deleteUserAttributes = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('DeleteUserAttributes'), buildUserPoolDeserializer(), defaultConfig);\n\nexport { associateSoftwareToken, changePassword, confirmDevice, confirmForgotPassword, confirmSignUp, deleteUser, deleteUserAttributes, forgetDevice, forgotPassword, getUser, getUserAttributeVerificationCode, globalSignOut, initiateAuth, listDevices, resendConfirmationCode, respondToAuthChallenge, revokeToken, setUserMFAPreference, signUp, updateDeviceStatus, updateUserAttributes, verifySoftwareToken, verifyUserAttribute };\n//# sourceMappingURL=index.mjs.map\n","import { composeServiceApi } from '@aws-amplify/core/internals/aws-client-utils/composers';\nimport { buildHttpRpcRequest, cognitoUserPoolTransferHandler, defaultConfig, getSharedHeaders, } from './base';\nimport { parseJsonBody, parseJsonError, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { assertServiceError } from '../../../../../errors/utils/assertServiceError';\nimport { AuthError } from '../../../../../errors/AuthError';\nconst buildUserPoolSerializer = (operation) => (input, endpoint) => {\n const headers = getSharedHeaders(operation);\n const body = JSON.stringify(input);\n return buildHttpRpcRequest(endpoint, headers, body);\n};\nconst buildUserPoolDeserializer = () => {\n return async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n assertServiceError(error);\n throw new AuthError({ name: error.name, message: error.message });\n }\n else {\n const body = await parseJsonBody(response);\n return body;\n }\n };\n};\nconst handleEmptyResponseDeserializer = () => {\n return async (response) => {\n if (response.statusCode >= 300) {\n const error = await parseJsonError(response);\n assertServiceError(error);\n throw new AuthError({ name: error.name, message: error.message });\n }\n else {\n return undefined;\n }\n };\n};\nexport const initiateAuth = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('InitiateAuth'), buildUserPoolDeserializer(), defaultConfig);\nexport const revokeToken = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('RevokeToken'), buildUserPoolDeserializer(), defaultConfig);\nexport const signUp = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('SignUp'), buildUserPoolDeserializer(), defaultConfig);\nexport const confirmSignUp = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ConfirmSignUp'), buildUserPoolDeserializer(), defaultConfig);\nexport const forgotPassword = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ForgotPassword'), buildUserPoolDeserializer(), defaultConfig);\nexport const confirmForgotPassword = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ConfirmForgotPassword'), buildUserPoolDeserializer(), defaultConfig);\nexport const respondToAuthChallenge = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('RespondToAuthChallenge'), buildUserPoolDeserializer(), defaultConfig);\nexport const resendConfirmationCode = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ResendConfirmationCode'), buildUserPoolDeserializer(), defaultConfig);\nexport const verifySoftwareToken = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('VerifySoftwareToken'), buildUserPoolDeserializer(), defaultConfig);\nexport const associateSoftwareToken = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('AssociateSoftwareToken'), buildUserPoolDeserializer(), defaultConfig);\nexport const setUserMFAPreference = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('SetUserMFAPreference'), buildUserPoolDeserializer(), defaultConfig);\nexport const getUser = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('GetUser'), buildUserPoolDeserializer(), defaultConfig);\nexport const changePassword = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ChangePassword'), buildUserPoolDeserializer(), defaultConfig);\nexport const confirmDevice = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ConfirmDevice'), buildUserPoolDeserializer(), defaultConfig);\nexport const forgetDevice = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ForgetDevice'), handleEmptyResponseDeserializer(), defaultConfig);\nexport const deleteUser = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('DeleteUser'), handleEmptyResponseDeserializer(), defaultConfig);\nexport const getUserAttributeVerificationCode = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('GetUserAttributeVerificationCode'), buildUserPoolDeserializer(), defaultConfig);\nexport const globalSignOut = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('GlobalSignOut'), buildUserPoolDeserializer(), defaultConfig);\nexport const updateUserAttributes = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('UpdateUserAttributes'), buildUserPoolDeserializer(), defaultConfig);\nexport const verifyUserAttribute = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('VerifyUserAttribute'), buildUserPoolDeserializer(), defaultConfig);\nexport const updateDeviceStatus = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('UpdateDeviceStatus'), buildUserPoolDeserializer(), defaultConfig);\nexport const listDevices = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('ListDevices'), buildUserPoolDeserializer(), defaultConfig);\nexport const deleteUserAttributes = composeServiceApi(cognitoUserPoolTransferHandler, buildUserPoolSerializer('DeleteUserAttributes'), buildUserPoolDeserializer(), defaultConfig);\n","import { Amplify } from '@aws-amplify/core';\nimport { unauthenticatedHandler, getRetryDecider, parseJsonError, jitteredBackoff, getDnsSuffix } from '@aws-amplify/core/internals/aws-client-utils';\nimport { getAmplifyUserAgent, AmplifyUrl } from '@aws-amplify/core/internals/utils';\nimport { composeTransferHandler } from '@aws-amplify/core/internals/aws-client-utils/composers';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * The service name used to sign requests if the API requires authentication.\n */\nconst SERVICE_NAME = 'cognito-idp';\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region.\n */\nconst endpointResolver = ({ region }) => {\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n const customURL = authConfig?.userPoolEndpoint;\n const defaultURL = new AmplifyUrl(`https://${SERVICE_NAME}.${region}.${getDnsSuffix(region)}`);\n return {\n url: customURL ? new AmplifyUrl(customURL) : defaultURL,\n };\n};\n/**\n * A Cognito Identity-specific middleware that disables caching for all requests.\n */\nconst disableCacheMiddleware = () => (next, context) => async function disableCacheMiddleware(request) {\n request.headers['cache-control'] = 'no-store';\n return next(request);\n};\n/**\n * A Cognito Identity-specific transfer handler that does NOT sign requests, and\n * disables caching.\n *\n * @internal\n */\nconst cognitoUserPoolTransferHandler = composeTransferHandler(unauthenticatedHandler, [disableCacheMiddleware]);\n/**\n * @internal\n */\nconst defaultConfig = {\n service: SERVICE_NAME,\n endpointResolver,\n retryDecider: getRetryDecider(parseJsonError),\n computeDelay: jitteredBackoff,\n userAgentValue: getAmplifyUserAgent(),\n cache: 'no-store',\n};\n/**\n * @internal\n */\nconst getSharedHeaders = (operation) => ({\n 'content-type': 'application/x-amz-json-1.1',\n 'x-amz-target': `AWSCognitoIdentityProviderService.${operation}`,\n});\n/**\n * @internal\n */\nconst buildHttpRpcRequest = ({ url }, headers, body) => ({\n headers,\n url,\n body,\n method: 'POST',\n});\n\nexport { buildHttpRpcRequest, cognitoUserPoolTransferHandler, defaultConfig, getSharedHeaders };\n//# sourceMappingURL=base.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Amplify } from '@aws-amplify/core';\nimport { getDnsSuffix, unauthenticatedHandler, parseJsonError, getRetryDecider, jitteredBackoff, } from '@aws-amplify/core/internals/aws-client-utils';\nimport { getAmplifyUserAgent, AmplifyUrl, } from '@aws-amplify/core/internals/utils';\nimport { composeTransferHandler } from '@aws-amplify/core/internals/aws-client-utils/composers';\n/**\n * The service name used to sign requests if the API requires authentication.\n */\nconst SERVICE_NAME = 'cognito-idp';\n/**\n * The endpoint resolver function that returns the endpoint URL for a given region.\n */\nconst endpointResolver = ({ region }) => {\n const authConfig = Amplify.getConfig().Auth?.Cognito;\n const customURL = authConfig?.userPoolEndpoint;\n const defaultURL = new AmplifyUrl(`https://${SERVICE_NAME}.${region}.${getDnsSuffix(region)}`);\n return {\n url: customURL ? new AmplifyUrl(customURL) : defaultURL,\n };\n};\n/**\n * A Cognito Identity-specific middleware that disables caching for all requests.\n */\nconst disableCacheMiddleware = () => (next, context) => async function disableCacheMiddleware(request) {\n request.headers['cache-control'] = 'no-store';\n return next(request);\n};\n/**\n * A Cognito Identity-specific transfer handler that does NOT sign requests, and\n * disables caching.\n *\n * @internal\n */\nexport const cognitoUserPoolTransferHandler = composeTransferHandler(unauthenticatedHandler, [disableCacheMiddleware]);\n/**\n * @internal\n */\nexport const defaultConfig = {\n service: SERVICE_NAME,\n endpointResolver,\n retryDecider: getRetryDecider(parseJsonError),\n computeDelay: jitteredBackoff,\n userAgentValue: getAmplifyUserAgent(),\n cache: 'no-store',\n};\n/**\n * @internal\n */\nexport const getSharedHeaders = (operation) => ({\n 'content-type': 'application/x-amz-json-1.1',\n 'x-amz-target': `AWSCognitoIdentityProviderService.${operation}`,\n});\n/**\n * @internal\n */\nexport const buildHttpRpcRequest = ({ url }, headers, body) => ({\n headers,\n url,\n body,\n method: 'POST',\n});\n","import { AuthError } from '../AuthError.mjs';\nimport { AmplifyErrorCode } from '@aws-amplify/core/internals/utils';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction assertServiceError(error) {\n if (!error ||\n error.name === 'Error' ||\n error instanceof TypeError) {\n throw new AuthError({\n name: AmplifyErrorCode.Unknown,\n message: 'An unknown error has occurred.',\n underlyingError: error,\n });\n }\n}\n\nexport { assertServiceError };\n//# sourceMappingURL=assertServiceError.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { AuthError } from '../AuthError';\nimport { AmplifyErrorCode, } from '@aws-amplify/core/internals/utils';\nexport function assertServiceError(error) {\n if (!error ||\n error.name === 'Error' ||\n error instanceof TypeError) {\n throw new AuthError({\n name: AmplifyErrorCode.Unknown,\n message: 'An unknown error has occurred.',\n underlyingError: error,\n });\n }\n}\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nfunction getUserContextData({ username, userPoolId, userPoolClientId, }) {\n if (typeof window === 'undefined') {\n return undefined;\n }\n const amazonCognitoAdvancedSecurityData = window\n .AmazonCognitoAdvancedSecurityData;\n if (typeof amazonCognitoAdvancedSecurityData === 'undefined') {\n return undefined;\n }\n const advancedSecurityData = amazonCognitoAdvancedSecurityData.getData(username, userPoolId, userPoolClientId);\n if (advancedSecurityData) {\n const userContextData = {\n EncodedData: advancedSecurityData,\n };\n return userContextData;\n }\n return {};\n}\n\nexport { getUserContextData };\n//# sourceMappingURL=userContextData.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function getUserContextData({ username, userPoolId, userPoolClientId, }) {\n if (typeof window === 'undefined') {\n return undefined;\n }\n const amazonCognitoAdvancedSecurityData = window\n .AmazonCognitoAdvancedSecurityData;\n if (typeof amazonCognitoAdvancedSecurityData === 'undefined') {\n return undefined;\n }\n const advancedSecurityData = amazonCognitoAdvancedSecurityData.getData(username, userPoolId, userPoolClientId);\n if (advancedSecurityData) {\n const userContextData = {\n EncodedData: advancedSecurityData,\n };\n return userContextData;\n }\n return {};\n}\n","import { Hub } from '@aws-amplify/core';\nimport { assertTokenProviderConfig, isTokenExpired, AMPLIFY_SYMBOL } from '@aws-amplify/core/internals/utils';\nimport { assertServiceError } from '../../../errors/utils/assertServiceError.mjs';\nimport { AuthError } from '../../../errors/AuthError.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nclass TokenOrchestrator {\n constructor() {\n this.waitForInflightOAuth = async () => { };\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n setTokenRefresher(tokenRefresher) {\n this.tokenRefresher = tokenRefresher;\n }\n setAuthTokenStore(tokenStore) {\n this.tokenStore = tokenStore;\n }\n setWaitForInflightOAuth(waitForInflightOAuth) {\n this.waitForInflightOAuth = waitForInflightOAuth;\n }\n getTokenStore() {\n if (!this.tokenStore) {\n throw new AuthError({\n name: 'EmptyTokenStoreException',\n message: 'TokenStore not set',\n });\n }\n return this.tokenStore;\n }\n getTokenRefresher() {\n if (!this.tokenRefresher) {\n throw new AuthError({\n name: 'EmptyTokenRefresherException',\n message: 'TokenRefresher not set',\n });\n }\n return this.tokenRefresher;\n }\n async getTokens(options) {\n let tokens;\n try {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n }\n catch (_err) {\n // Token provider not configured\n return null;\n }\n await this.waitForInflightOAuth();\n tokens = await this.getTokenStore().loadTokens();\n const username = await this.getTokenStore().getLastAuthUser();\n if (tokens === null) {\n return null;\n }\n const idTokenExpired = !!tokens?.idToken &&\n isTokenExpired({\n expiresAt: (tokens.idToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n const accessTokenExpired = isTokenExpired({\n expiresAt: (tokens.accessToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n if (options?.forceRefresh || idTokenExpired || accessTokenExpired) {\n tokens = await this.refreshTokens({\n tokens,\n username,\n });\n if (tokens === null) {\n return null;\n }\n }\n return {\n accessToken: tokens?.accessToken,\n idToken: tokens?.idToken,\n signInDetails: tokens?.signInDetails,\n };\n }\n async refreshTokens({ tokens, username, }) {\n try {\n const newTokens = await this.getTokenRefresher()({\n tokens,\n authConfig: this.authConfig,\n username,\n });\n await this.setTokens({ tokens: newTokens });\n Hub.dispatch('auth', { event: 'tokenRefresh' }, 'Auth', AMPLIFY_SYMBOL);\n return newTokens;\n }\n catch (err) {\n return this.handleErrors(err);\n }\n }\n handleErrors(err) {\n assertServiceError(err);\n if (err.message !== 'Network error') {\n // TODO(v6): Check errors on client\n this.clearTokens();\n }\n Hub.dispatch('auth', {\n event: 'tokenRefresh_failure',\n data: { error: err },\n }, 'Auth', AMPLIFY_SYMBOL);\n if (err.name.startsWith('NotAuthorizedException')) {\n return null;\n }\n throw err;\n }\n async setTokens({ tokens }) {\n return this.getTokenStore().storeTokens(tokens);\n }\n async clearTokens() {\n return this.getTokenStore().clearTokens();\n }\n getDeviceMetadata(username) {\n return this.getTokenStore().getDeviceMetadata(username);\n }\n clearDeviceMetadata(username) {\n return this.getTokenStore().clearDeviceMetadata(username);\n }\n}\n\nexport { TokenOrchestrator };\n//# sourceMappingURL=TokenOrchestrator.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { Hub, } from '@aws-amplify/core';\nimport { AMPLIFY_SYMBOL, assertTokenProviderConfig, isTokenExpired, } from '@aws-amplify/core/internals/utils';\nimport { assertServiceError } from '../../../errors/utils/assertServiceError';\nimport { AuthError } from '../../../errors/AuthError';\nexport class TokenOrchestrator {\n constructor() {\n this.waitForInflightOAuth = async () => { };\n }\n setAuthConfig(authConfig) {\n this.authConfig = authConfig;\n }\n setTokenRefresher(tokenRefresher) {\n this.tokenRefresher = tokenRefresher;\n }\n setAuthTokenStore(tokenStore) {\n this.tokenStore = tokenStore;\n }\n setWaitForInflightOAuth(waitForInflightOAuth) {\n this.waitForInflightOAuth = waitForInflightOAuth;\n }\n getTokenStore() {\n if (!this.tokenStore) {\n throw new AuthError({\n name: 'EmptyTokenStoreException',\n message: 'TokenStore not set',\n });\n }\n return this.tokenStore;\n }\n getTokenRefresher() {\n if (!this.tokenRefresher) {\n throw new AuthError({\n name: 'EmptyTokenRefresherException',\n message: 'TokenRefresher not set',\n });\n }\n return this.tokenRefresher;\n }\n async getTokens(options) {\n let tokens;\n try {\n assertTokenProviderConfig(this.authConfig?.Cognito);\n }\n catch (_err) {\n // Token provider not configured\n return null;\n }\n await this.waitForInflightOAuth();\n tokens = await this.getTokenStore().loadTokens();\n const username = await this.getTokenStore().getLastAuthUser();\n if (tokens === null) {\n return null;\n }\n const idTokenExpired = !!tokens?.idToken &&\n isTokenExpired({\n expiresAt: (tokens.idToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n const accessTokenExpired = isTokenExpired({\n expiresAt: (tokens.accessToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n if (options?.forceRefresh || idTokenExpired || accessTokenExpired) {\n tokens = await this.refreshTokens({\n tokens,\n username,\n });\n if (tokens === null) {\n return null;\n }\n }\n return {\n accessToken: tokens?.accessToken,\n idToken: tokens?.idToken,\n signInDetails: tokens?.signInDetails,\n };\n }\n async refreshTokens({ tokens, username, }) {\n try {\n const newTokens = await this.getTokenRefresher()({\n tokens,\n authConfig: this.authConfig,\n username,\n });\n await this.setTokens({ tokens: newTokens });\n Hub.dispatch('auth', { event: 'tokenRefresh' }, 'Auth', AMPLIFY_SYMBOL);\n return newTokens;\n }\n catch (err) {\n return this.handleErrors(err);\n }\n }\n handleErrors(err) {\n assertServiceError(err);\n if (err.message !== 'Network error') {\n // TODO(v6): Check errors on client\n this.clearTokens();\n }\n Hub.dispatch('auth', {\n event: 'tokenRefresh_failure',\n data: { error: err },\n }, 'Auth', AMPLIFY_SYMBOL);\n if (err.name.startsWith('NotAuthorizedException')) {\n return null;\n }\n throw err;\n }\n async setTokens({ tokens }) {\n return this.getTokenStore().storeTokens(tokens);\n }\n async clearTokens() {\n return this.getTokenStore().clearTokens();\n }\n getDeviceMetadata(username) {\n return this.getTokenStore().getDeviceMetadata(username);\n }\n clearDeviceMetadata(username) {\n return this.getTokenStore().clearDeviceMetadata(username);\n }\n}\n","import { generateClient as generateClient$1 } from '@aws-amplify/api-graphql/internals';\nimport { Amplify } from '@aws-amplify/core';\n\n/**\n * Generates an API client that can work with models or raw GraphQL\n */\nfunction generateClient(options = {}) {\n return generateClient$1({\n ...options,\n amplify: Amplify,\n });\n}\n\nexport { generateClient };\n//# sourceMappingURL=API.mjs.map\n","import { generateClient as internalGenerateClient } from '@aws-amplify/api-graphql/internals';\nimport { Amplify } from '@aws-amplify/core';\n/**\n * Generates an API client that can work with models or raw GraphQL\n */\nexport function generateClient(options = {}) {\n return internalGenerateClient({\n ...options,\n amplify: Amplify,\n });\n}\n","import { graphql, cancel, isCancelError } from './v6.mjs';\nimport { generateModelsProperty } from './generateModelsProperty.mjs';\nimport { __amplify, __authMode, __authToken, __headers } from '../types/index.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * @private\n *\n * Creates a client that can be used to make GraphQL requests, using a provided `AmplifyClassV6`\n * compatible context object for config and auth fetching.\n *\n * @param params\n * @returns\n */\nfunction generateClient(params) {\n const client = {\n [__amplify]: params.amplify,\n [__authMode]: params.authMode,\n [__authToken]: params.authToken,\n [__headers]: params.headers,\n graphql,\n cancel,\n isCancelError,\n models: {},\n };\n client.models = generateModelsProperty(client, params);\n return client;\n}\n\nexport { generateClient };\n//# sourceMappingURL=generateClient.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { graphql, cancel, isCancelError } from './v6';\nimport { generateModelsProperty } from './generateModelsProperty';\nimport { __amplify, __authMode, __authToken, __headers, } from '../types';\n/**\n * @private\n *\n * Creates a client that can be used to make GraphQL requests, using a provided `AmplifyClassV6`\n * compatible context object for config and auth fetching.\n *\n * @param params\n * @returns\n */\nexport function generateClient(params) {\n const client = {\n [__amplify]: params.amplify,\n [__authMode]: params.authMode,\n [__authToken]: params.authToken,\n [__headers]: params.headers,\n graphql,\n cancel,\n isCancelError,\n models: {},\n };\n client.models = generateModelsProperty(client, params);\n return client;\n}\n","import { GraphQLAPI } from '../GraphQLAPI.mjs';\nimport { __authMode, __authToken, __amplify } from '../types/index.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n/**\n * Invokes graphql operations against a graphql service, providing correct input and\n * output types if Amplify-generated graphql from a recent version of the CLI/codegen\n * are used *or* correct typing is provided via the type argument.\n *\n * Amplify-generated \"branded\" graphql queries will look similar to this:\n *\n * ```ts\n * //\n * // |-- branding\n * // v\n * export const getModel = `...` as GeneratedQuery<\n * \tGetModelQueryVariables,\n * \tGetModelQuery\n * >;\n * ```\n *\n * If this branding is not in your generated graphql, update to a newer version of\n * CLI/codegen and regenerate your graphql using `amplify codegen`.\n *\n * ## Using Amplify-generated graphql\n *\n * ```ts\n * import * as queries from './graphql/queries';\n *\n * //\n * // |-- correctly typed graphql response containing a Widget\n * // v\n * const queryResult = await graphql({\n * \tquery: queries.getWidget,\n * \tvariables: {\n * \t\tid: \"abc\", // <-- type hinted/enforced\n * \t},\n * });\n *\n * //\n * // |-- a correctly typed Widget\n * // v\n * const fetchedWidget = queryResult.data?.getWidget!;\n * ```\n *\n * ## Custom input + result types\n *\n * To provide input types (`variables`) and result types:\n *\n * ```ts\n * type GetById_NameOnly = {\n * \tvariables: {\n * \t\tid: string\n * \t},\n * \tresult: Promise<{\n * \t\tdata: { getWidget: { name: string } }\n * \t}>\n * }\n *\n * //\n * // |-- type is GetById_NameOnly[\"result\"]\n * // v\n * const result = graphql({\n * \tquery: \"...\",\n * \tvariables: { id: \"abc\" } // <-- type of GetById_NameOnly[\"variables\"]\n * });\n * ```\n *\n * ## Custom result type only\n *\n * To specify result types only, use a type that is *not* in the `{variables, result}` shape:\n *\n * ```ts\n * type MyResultType = Promise<{\n * \tdata: {\n * \t\tgetWidget: { name: string }\n * \t}\n * }>\n *\n * //\n * // |-- type is MyResultType\n * // v\n * const result = graphql({query: \"...\"});\n * ```\n *\n * @param options\n * @param additionalHeaders\n */\nfunction graphql(options, additionalHeaders) {\n // inject client-level auth \n options.authMode = options.authMode || this[__authMode];\n options.authToken = options.authToken || this[__authToken];\n /**\n * The correctness of these typings depends on correct string branding or overrides.\n * Neither of these can actually be validated at runtime. Hence, we don't perform\n * any validation or type-guarding here.\n */\n const result = GraphQLAPI.graphql(this[__amplify], options, additionalHeaders);\n return result;\n}\n/**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns - A boolean indicating if the request was cancelled\n */\nfunction cancel(promise, message) {\n return GraphQLAPI.cancel(promise, message);\n}\n/**\n * Checks to see if an error thrown is from an api request cancellation\n * @param {any} error - Any error\n * @returns - A boolean indicating if the error was from an api request cancellation\n */\nfunction isCancelError(error) {\n return GraphQLAPI.isCancelError(error);\n}\n\nexport { cancel, graphql, isCancelError };\n//# sourceMappingURL=v6.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { GraphQLAPI } from '../GraphQLAPI';\nimport { __amplify, __authMode, __authToken, } from '../types';\n/**\n * Invokes graphql operations against a graphql service, providing correct input and\n * output types if Amplify-generated graphql from a recent version of the CLI/codegen\n * are used *or* correct typing is provided via the type argument.\n *\n * Amplify-generated \"branded\" graphql queries will look similar to this:\n *\n * ```ts\n * //\n * // |-- branding\n * // v\n * export const getModel = `...` as GeneratedQuery<\n * \tGetModelQueryVariables,\n * \tGetModelQuery\n * >;\n * ```\n *\n * If this branding is not in your generated graphql, update to a newer version of\n * CLI/codegen and regenerate your graphql using `amplify codegen`.\n *\n * ## Using Amplify-generated graphql\n *\n * ```ts\n * import * as queries from './graphql/queries';\n *\n * //\n * // |-- correctly typed graphql response containing a Widget\n * // v\n * const queryResult = await graphql({\n * \tquery: queries.getWidget,\n * \tvariables: {\n * \t\tid: \"abc\", // <-- type hinted/enforced\n * \t},\n * });\n *\n * //\n * // |-- a correctly typed Widget\n * // v\n * const fetchedWidget = queryResult.data?.getWidget!;\n * ```\n *\n * ## Custom input + result types\n *\n * To provide input types (`variables`) and result types:\n *\n * ```ts\n * type GetById_NameOnly = {\n * \tvariables: {\n * \t\tid: string\n * \t},\n * \tresult: Promise<{\n * \t\tdata: { getWidget: { name: string } }\n * \t}>\n * }\n *\n * //\n * // |-- type is GetById_NameOnly[\"result\"]\n * // v\n * const result = graphql({\n * \tquery: \"...\",\n * \tvariables: { id: \"abc\" } // <-- type of GetById_NameOnly[\"variables\"]\n * });\n * ```\n *\n * ## Custom result type only\n *\n * To specify result types only, use a type that is *not* in the `{variables, result}` shape:\n *\n * ```ts\n * type MyResultType = Promise<{\n * \tdata: {\n * \t\tgetWidget: { name: string }\n * \t}\n * }>\n *\n * //\n * // |-- type is MyResultType\n * // v\n * const result = graphql({query: \"...\"});\n * ```\n *\n * @param options\n * @param additionalHeaders\n */\nexport function graphql(options, additionalHeaders) {\n // inject client-level auth \n options.authMode = options.authMode || this[__authMode];\n options.authToken = options.authToken || this[__authToken];\n /**\n * The correctness of these typings depends on correct string branding or overrides.\n * Neither of these can actually be validated at runtime. Hence, we don't perform\n * any validation or type-guarding here.\n */\n const result = GraphQLAPI.graphql(this[__amplify], options, additionalHeaders);\n return result;\n}\n/**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns - A boolean indicating if the request was cancelled\n */\nexport function cancel(promise, message) {\n return GraphQLAPI.cancel(promise, message);\n}\n/**\n * Checks to see if an error thrown is from an api request cancellation\n * @param {any} error - Any error\n * @returns - A boolean indicating if the error was from an api request cancellation\n */\nexport function isCancelError(error) {\n return GraphQLAPI.isCancelError(error);\n}\n","import { Category, ApiAction } from '@aws-amplify/core/internals/utils';\nimport { InternalGraphQLAPIClass } from './internals/InternalGraphQLAPI.mjs';\n\nconst graphqlOperation = (query, variables = {}, authToken) => ({\n query,\n variables,\n authToken,\n});\n/**\n * Export Cloud Logic APIs\n */\nclass GraphQLAPIClass extends InternalGraphQLAPIClass {\n getModuleName() {\n return 'GraphQLAPI';\n }\n /**\n * Executes a GraphQL operation\n *\n * @param options - GraphQL Options\n * @param [additionalHeaders] - headers to merge in after any `libraryConfigHeaders` set in the config\n * @returns An Observable if the query is a subscription query, else a promise of the graphql result.\n */\n graphql(amplify, options, additionalHeaders) {\n return super.graphql(amplify, options, additionalHeaders, {\n category: Category.API,\n action: ApiAction.GraphQl,\n });\n }\n /**\n * Checks to see if an error thrown is from an api request cancellation\n * @param error - Any error\n * @returns A boolean indicating if the error was from an api request cancellation\n */\n isCancelError(error) {\n return super.isCancelError(error);\n }\n /**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns A boolean indicating if the request was cancelled\n */\n cancel(request, message) {\n return super.cancel(request, message);\n }\n}\nconst GraphQLAPI = new GraphQLAPIClass();\n\nexport { GraphQLAPI, GraphQLAPIClass, graphqlOperation };\n//# sourceMappingURL=GraphQLAPI.mjs.map\n","import { Category, ApiAction } from '@aws-amplify/core/internals/utils';\nimport { InternalGraphQLAPIClass } from './internals/InternalGraphQLAPI';\nexport const graphqlOperation = (query, variables = {}, authToken) => ({\n query,\n variables,\n authToken,\n});\n/**\n * Export Cloud Logic APIs\n */\nexport class GraphQLAPIClass extends InternalGraphQLAPIClass {\n getModuleName() {\n return 'GraphQLAPI';\n }\n /**\n * Executes a GraphQL operation\n *\n * @param options - GraphQL Options\n * @param [additionalHeaders] - headers to merge in after any `libraryConfigHeaders` set in the config\n * @returns An Observable if the query is a subscription query, else a promise of the graphql result.\n */\n graphql(amplify, options, additionalHeaders) {\n return super.graphql(amplify, options, additionalHeaders, {\n category: Category.API,\n action: ApiAction.GraphQl,\n });\n }\n /**\n * Checks to see if an error thrown is from an api request cancellation\n * @param error - Any error\n * @returns A boolean indicating if the error was from an api request cancellation\n */\n isCancelError(error) {\n return super.isCancelError(error);\n }\n /**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns A boolean indicating if the request was cancelled\n */\n cancel(request, message) {\n return super.cancel(request, message);\n }\n}\nexport const GraphQLAPI = new GraphQLAPIClass();\n","import { parse, print, GraphQLError } from 'graphql';\nimport { catchError } from 'rxjs';\nimport { ConsoleLogger } from '@aws-amplify/core';\nimport { AmplifyUrl, getAmplifyUserAgent } from '@aws-amplify/core/internals/utils';\nimport { GraphQLAuthError } from '../types/index.mjs';\nimport { isCancelError } from '@aws-amplify/api-rest';\nimport { post, cancel, updateRequestToBeCancellable } from '@aws-amplify/api-rest/internals';\nimport { AWSAppSyncRealTimeProvider } from '../Providers/AWSAppSyncRealTimeProvider/index.mjs';\nimport { resolveConfig } from '../utils/resolveConfig.mjs';\nimport { resolveLibraryOptions } from '../utils/resolveLibraryOptions.mjs';\nimport { repackageUnauthError } from '../utils/errors/repackageAuthError.mjs';\n\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst USER_AGENT_HEADER = 'x-amz-user-agent';\nnew ConsoleLogger('GraphQLAPI');\nconst isAmplifyInstance = (amplify) => {\n return typeof amplify !== 'function';\n};\n/**\n * Export Cloud Logic APIs\n */\nclass InternalGraphQLAPIClass {\n constructor() {\n /**\n * @private\n */\n this.appSyncRealTime = new AWSAppSyncRealTimeProvider();\n this._api = {\n post,\n cancelREST: cancel,\n isCancelErrorREST: isCancelError,\n updateRequestToBeCancellable,\n };\n }\n getModuleName() {\n return 'InternalGraphQLAPI';\n }\n async _headerBasedAuth(amplify, authMode, additionalHeaders = {}) {\n const { region: region, endpoint: appSyncGraphqlEndpoint, apiKey, } = resolveConfig(amplify);\n let headers = {};\n switch (authMode) {\n case 'apiKey':\n if (!apiKey) {\n throw new Error(GraphQLAuthError.NO_API_KEY);\n }\n headers = {\n 'X-Api-Key': apiKey,\n };\n break;\n case 'iam':\n const session = await amplify.Auth.fetchAuthSession();\n if (session.credentials === undefined) {\n throw new Error(GraphQLAuthError.NO_CREDENTIALS);\n }\n break;\n case 'oidc':\n case 'userPool':\n try {\n let token;\n token = (await amplify.Auth.fetchAuthSession()).tokens?.accessToken.toString();\n if (!token) {\n throw new Error(GraphQLAuthError.NO_FEDERATED_JWT);\n }\n headers = {\n Authorization: token,\n };\n }\n catch (e) {\n throw new Error(GraphQLAuthError.NO_CURRENT_USER);\n }\n break;\n case 'lambda':\n if (typeof additionalHeaders === 'object' &&\n !additionalHeaders.Authorization) {\n throw new Error(GraphQLAuthError.NO_AUTH_TOKEN);\n }\n headers = {\n Authorization: additionalHeaders.Authorization,\n };\n break;\n }\n return headers;\n }\n /**\n * to get the operation type\n * @param operation\n */\n getGraphqlOperationType(operation) {\n const doc = parse(operation);\n const definitions = doc.definitions;\n const [{ operation: operationType }] = definitions;\n return operationType;\n }\n /**\n * Executes a GraphQL operation\n *\n * @param options - GraphQL Options\n * @param [additionalHeaders] - headers to merge in after any `libraryConfigHeaders` set in the config\n * @returns An Observable if the query is a subscription query, else a promise of the graphql result.\n */\n graphql(amplify, { query: paramQuery, variables = {}, authMode, authToken }, additionalHeaders, customUserAgentDetails) {\n const query = typeof paramQuery === 'string'\n ? parse(paramQuery)\n : parse(print(paramQuery));\n const [operationDef = {}] = query.definitions.filter(def => def.kind === 'OperationDefinition');\n const { operation: operationType } = operationDef;\n const headers = additionalHeaders || {};\n switch (operationType) {\n case 'query':\n case 'mutation':\n const abortController = new AbortController();\n let responsePromise;\n if (isAmplifyInstance(amplify)) {\n responsePromise = this._graphql(amplify, { query, variables, authMode }, headers, abortController, customUserAgentDetails, authToken);\n }\n else {\n const wrapper = (amplifyInstance) => this._graphql(amplifyInstance, { query, variables, authMode }, headers, abortController, customUserAgentDetails, authToken);\n responsePromise = amplify(wrapper);\n }\n this._api.updateRequestToBeCancellable(responsePromise, abortController);\n return responsePromise;\n case 'subscription':\n return this._graphqlSubscribe(amplify, { query, variables, authMode }, headers, customUserAgentDetails, authToken);\n default:\n throw new Error(`invalid operation type: ${operationType}`);\n }\n }\n async _graphql(amplify, { query, variables, authMode: explicitAuthMode }, additionalHeaders = {}, abortController, customUserAgentDetails, authToken) {\n const { region: region, endpoint: appSyncGraphqlEndpoint, customEndpoint, customEndpointRegion, defaultAuthMode, } = resolveConfig(amplify);\n const authMode = explicitAuthMode || defaultAuthMode || 'iam';\n /**\n * Retrieve library options from Amplify configuration.\n * `customHeaders` here are from the Amplify configuration options,\n * and are for non-AppSync endpoints only. These are *not* the same as\n * `additionalHeaders`, which are custom headers that are either 1)\n * included when configuring the API client or 2) passed along with\n * individual requests.\n */\n const { headers: customHeaders, withCredentials } = resolveLibraryOptions(amplify);\n /**\n * Client or request-specific custom headers that may or may not be\n * returned by a function:\n */\n let additionalCustomHeaders;\n if (typeof additionalHeaders === 'function') {\n const requestOptions = {\n method: 'POST',\n url: new AmplifyUrl(customEndpoint || appSyncGraphqlEndpoint || '').toString(),\n queryString: print(query),\n };\n additionalCustomHeaders = await additionalHeaders(requestOptions);\n }\n else {\n additionalCustomHeaders = additionalHeaders;\n }\n // if an authorization header is set, have the explicit authToken take precedence\n if (authToken) {\n additionalCustomHeaders = {\n ...additionalCustomHeaders,\n Authorization: authToken,\n };\n }\n // TODO: Figure what we need to do to remove `!`'s.\n const headers = {\n ...(!customEndpoint &&\n (await this._headerBasedAuth(amplify, authMode, additionalCustomHeaders))),\n /**\n * Custom endpoint headers.\n * If there is both a custom endpoint and custom region present, we get the headers.\n * If there is a custom endpoint but no region, we return an empty object.\n * If neither are present, we return an empty object.\n */\n ...((customEndpoint &&\n (customEndpointRegion\n ? await this._headerBasedAuth(amplify, authMode, additionalCustomHeaders)\n : {})) ||\n {}),\n // Custom headers included in Amplify configuration options:\n ...(customHeaders &&\n (await customHeaders({\n query: print(query),\n variables,\n }))),\n // Custom headers from individual requests or API client configuration:\n ...additionalCustomHeaders,\n // User agent headers:\n ...(!customEndpoint && {\n [USER_AGENT_HEADER]: getAmplifyUserAgent(customUserAgentDetails),\n }),\n };\n const body = {\n query: print(query),\n variables: variables || null,\n };\n let signingServiceInfo;\n /**\n * We do not send the signing service info to the REST API under the\n * following conditions (i.e. it will not sign the request):\n * - there is a custom endpoint but no region\n * - the auth mode is `none`, or `apiKey`\n * - the auth mode is a type other than the types listed below\n */\n if ((customEndpoint && !customEndpointRegion) ||\n (authMode !== 'oidc' &&\n authMode !== 'userPool' &&\n authMode !== 'iam' &&\n authMode !== 'lambda')) {\n signingServiceInfo = undefined;\n }\n else {\n signingServiceInfo = {\n service: !customEndpointRegion ? 'appsync' : 'execute-api',\n region: !customEndpointRegion ? region : customEndpointRegion,\n };\n }\n const endpoint = customEndpoint || appSyncGraphqlEndpoint;\n if (!endpoint) {\n const error = new GraphQLError('No graphql endpoint provided.');\n throw {\n data: {},\n errors: [error],\n };\n }\n let response;\n try {\n const { body: responseBody } = await this._api.post({\n url: new AmplifyUrl(endpoint),\n options: {\n headers,\n body,\n signingServiceInfo,\n withCredentials,\n },\n abortController,\n });\n const result = await responseBody.json();\n response = result;\n }\n catch (err) {\n // If the exception is because user intentionally\n // cancelled the request, do not modify the exception\n // so that clients can identify the exception correctly.\n if (this.isCancelError(err)) {\n throw err;\n }\n response = {\n data: {},\n errors: [\n new GraphQLError(err.message, null, null, null, null, err),\n ],\n };\n }\n const { errors } = response;\n if (errors && errors.length) {\n throw repackageUnauthError(response);\n }\n return response;\n }\n /**\n * Checks to see if an error thrown is from an api request cancellation\n * @param {any} error - Any error\n * @return {boolean} - A boolean indicating if the error was from an api request cancellation\n */\n isCancelError(error) {\n return this._api.isCancelErrorREST(error);\n }\n /**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns - A boolean indicating if the request was cancelled\n */\n cancel(request, message) {\n return this._api.cancelREST(request, message);\n }\n _graphqlSubscribe(amplify, { query, variables, authMode }, additionalHeaders = {}, customUserAgentDetails, authToken) {\n const config = resolveConfig(amplify);\n /**\n * Retrieve library options from Amplify configuration.\n * `libraryConfigHeaders` are from the Amplify configuration options,\n * and will not be overwritten by other custom headers. These are *not*\n * the same as `additionalHeaders`, which are custom headers that are\n * either 1)included when configuring the API client or 2) passed along\n * with individual requests.\n */\n const { headers: libraryConfigHeaders } = resolveLibraryOptions(amplify);\n return this.appSyncRealTime\n .subscribe({\n query: print(query),\n variables,\n appSyncGraphqlEndpoint: config?.endpoint,\n region: config?.region,\n authenticationType: authMode || config?.defaultAuthMode,\n apiKey: config?.apiKey,\n additionalHeaders,\n authToken,\n libraryConfigHeaders,\n }, customUserAgentDetails)\n .pipe(catchError(e => {\n if (e.errors) {\n throw repackageUnauthError(e);\n }\n throw e;\n }));\n }\n}\nconst InternalGraphQLAPI = new InternalGraphQLAPIClass();\n\nexport { InternalGraphQLAPI, InternalGraphQLAPIClass };\n//# sourceMappingURL=InternalGraphQLAPI.mjs.map\n","// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { print, parse, GraphQLError, } from 'graphql';\nimport { catchError } from 'rxjs';\nimport { ConsoleLogger } from '@aws-amplify/core';\nimport { getAmplifyUserAgent, AmplifyUrl, } from '@aws-amplify/core/internals/utils';\nimport { GraphQLAuthError, } from '../types';\nimport { isCancelError as isCancelErrorREST } from '@aws-amplify/api-rest';\nimport { post, cancel as cancelREST, updateRequestToBeCancellable, } from '@aws-amplify/api-rest/internals';\nimport { AWSAppSyncRealTimeProvider } from '../Providers/AWSAppSyncRealTimeProvider';\nimport { resolveConfig, resolveLibraryOptions } from '../utils';\nimport { repackageUnauthError } from '../utils/errors/repackageAuthError';\nconst USER_AGENT_HEADER = 'x-amz-user-agent';\nconst logger = new ConsoleLogger('GraphQLAPI');\nconst isAmplifyInstance = (amplify) => {\n return typeof amplify !== 'function';\n};\n/**\n * Export Cloud Logic APIs\n */\nexport class InternalGraphQLAPIClass {\n constructor() {\n /**\n * @private\n */\n this.appSyncRealTime = new AWSAppSyncRealTimeProvider();\n this._api = {\n post,\n cancelREST,\n isCancelErrorREST,\n updateRequestToBeCancellable,\n };\n }\n getModuleName() {\n return 'InternalGraphQLAPI';\n }\n async _headerBasedAuth(amplify, authMode, additionalHeaders = {}) {\n const { region: region, endpoint: appSyncGraphqlEndpoint, apiKey, } = resolveConfig(amplify);\n let headers = {};\n switch (authMode) {\n case 'apiKey':\n if (!apiKey) {\n throw new Error(GraphQLAuthError.NO_API_KEY);\n }\n headers = {\n 'X-Api-Key': apiKey,\n };\n break;\n case 'iam':\n const session = await amplify.Auth.fetchAuthSession();\n if (session.credentials === undefined) {\n throw new Error(GraphQLAuthError.NO_CREDENTIALS);\n }\n break;\n case 'oidc':\n case 'userPool':\n try {\n let token;\n token = (await amplify.Auth.fetchAuthSession()).tokens?.accessToken.toString();\n if (!token) {\n throw new Error(GraphQLAuthError.NO_FEDERATED_JWT);\n }\n headers = {\n Authorization: token,\n };\n }\n catch (e) {\n throw new Error(GraphQLAuthError.NO_CURRENT_USER);\n }\n break;\n case 'lambda':\n if (typeof additionalHeaders === 'object' &&\n !additionalHeaders.Authorization) {\n throw new Error(GraphQLAuthError.NO_AUTH_TOKEN);\n }\n headers = {\n Authorization: additionalHeaders.Authorization,\n };\n break;\n case 'none':\n break;\n default:\n break;\n }\n return headers;\n }\n /**\n * to get the operation type\n * @param operation\n */\n getGraphqlOperationType(operation) {\n const doc = parse(operation);\n const definitions = doc.definitions;\n const [{ operation: operationType }] = definitions;\n return operationType;\n }\n /**\n * Executes a GraphQL operation\n *\n * @param options - GraphQL Options\n * @param [additionalHeaders] - headers to merge in after any `libraryConfigHeaders` set in the config\n * @returns An Observable if the query is a subscription query, else a promise of the graphql result.\n */\n graphql(amplify, { query: paramQuery, variables = {}, authMode, authToken }, additionalHeaders, customUserAgentDetails) {\n const query = typeof paramQuery === 'string'\n ? parse(paramQuery)\n : parse(print(paramQuery));\n const [operationDef = {}] = query.definitions.filter(def => def.kind === 'OperationDefinition');\n const { operation: operationType } = operationDef;\n const headers = additionalHeaders || {};\n switch (operationType) {\n case 'query':\n case 'mutation':\n const abortController = new AbortController();\n let responsePromise;\n if (isAmplifyInstance(amplify)) {\n responsePromise = this._graphql(amplify, { query, variables, authMode }, headers, abortController, customUserAgentDetails, authToken);\n }\n else {\n const wrapper = (amplifyInstance) => this._graphql(amplifyInstance, { query, variables, authMode }, headers, abortController, customUserAgentDetails, authToken);\n responsePromise = amplify(wrapper);\n }\n this._api.updateRequestToBeCancellable(responsePromise, abortController);\n return responsePromise;\n case 'subscription':\n return this._graphqlSubscribe(amplify, { query, variables, authMode }, headers, customUserAgentDetails, authToken);\n default:\n throw new Error(`invalid operation type: ${operationType}`);\n }\n }\n async _graphql(amplify, { query, variables, authMode: explicitAuthMode }, additionalHeaders = {}, abortController, customUserAgentDetails, authToken) {\n const { region: region, endpoint: appSyncGraphqlEndpoint, customEndpoint, customEndpointRegion, defaultAuthMode, } = resolveConfig(amplify);\n const authMode = explicitAuthMode || defaultAuthMode || 'iam';\n /**\n * Retrieve library options from Amplify configuration.\n * `customHeaders` here are from the Amplify configuration options,\n * and are for non-AppSync endpoints only. These are *not* the same as\n * `additionalHeaders`, which are custom headers that are either 1)\n * included when configuring the API client or 2) passed along with\n * individual requests.\n */\n const { headers: customHeaders, withCredentials } = resolveLibraryOptions(amplify);\n /**\n * Client or request-specific custom headers that may or may not be\n * returned by a function:\n */\n let additionalCustomHeaders;\n if (typeof additionalHeaders === 'function') {\n const requestOptions = {\n method: 'POST',\n url: new AmplifyUrl(customEndpoint || appSyncGraphqlEndpoint || '').toString(),\n queryString: print(query),\n };\n additionalCustomHeaders = await additionalHeaders(requestOptions);\n }\n else {\n additionalCustomHeaders = additionalHeaders;\n }\n // if an authorization header is set, have the explicit authToken take precedence\n if (authToken) {\n additionalCustomHeaders = {\n ...additionalCustomHeaders,\n Authorization: authToken,\n };\n }\n // TODO: Figure what we need to do to remove `!`'s.\n const headers = {\n ...(!customEndpoint &&\n (await this._headerBasedAuth(amplify, authMode, additionalCustomHeaders))),\n /**\n * Custom endpoint headers.\n * If there is both a custom endpoint and custom region present, we get the headers.\n * If there is a custom endpoint but no region, we return an empty object.\n * If neither are present, we return an empty object.\n */\n ...((customEndpoint &&\n (customEndpointRegion\n ? await this._headerBasedAuth(amplify, authMode, additionalCustomHeaders)\n : {})) ||\n {}),\n // Custom headers included in Amplify configuration options:\n ...(customHeaders &&\n (await customHeaders({\n query: print(query),\n variables,\n }))),\n // Custom headers from individual requests or API client configuration:\n ...additionalCustomHeaders,\n // User agent headers:\n ...(!customEndpoint && {\n [USER_AGENT_HEADER]: getAmplifyUserAgent(customUserAgentDetails),\n }),\n };\n const body = {\n query: print(query),\n variables: variables || null,\n };\n let signingServiceInfo;\n /**\n * We do not send the signing service info to the REST API under the\n * following conditions (i.e. it will not sign the request):\n * - there is a custom endpoint but no region\n * - the auth mode is `none`, or `apiKey`\n * - the auth mode is a type other than the types listed below\n */\n if ((customEndpoint && !customEndpointRegion) ||\n (authMode !== 'oidc' &&\n authMode !== 'userPool' &&\n authMode !== 'iam' &&\n authMode !== 'lambda')) {\n signingServiceInfo = undefined;\n }\n else {\n signingServiceInfo = {\n service: !customEndpointRegion ? 'appsync' : 'execute-api',\n region: !customEndpointRegion ? region : customEndpointRegion,\n };\n }\n const endpoint = customEndpoint || appSyncGraphqlEndpoint;\n if (!endpoint) {\n const error = new GraphQLError('No graphql endpoint provided.');\n throw {\n data: {},\n errors: [error],\n };\n }\n let response;\n try {\n const { body: responseBody } = await this._api.post({\n url: new AmplifyUrl(endpoint),\n options: {\n headers,\n body,\n signingServiceInfo,\n withCredentials,\n },\n abortController,\n });\n const result = await responseBody.json();\n response = result;\n }\n catch (err) {\n // If the exception is because user intentionally\n // cancelled the request, do not modify the exception\n // so that clients can identify the exception correctly.\n if (this.isCancelError(err)) {\n throw err;\n }\n response = {\n data: {},\n errors: [\n new GraphQLError(err.message, null, null, null, null, err),\n ],\n };\n }\n const { errors } = response;\n if (errors && errors.length) {\n throw repackageUnauthError(response);\n }\n return response;\n }\n /**\n * Checks to see if an error thrown is from an api request cancellation\n * @param {any} error - Any error\n * @return {boolean} - A boolean indicating if the error was from an api request cancellation\n */\n isCancelError(error) {\n return this._api.isCancelErrorREST(error);\n }\n /**\n * Cancels an inflight request. Only applicable for graphql queries and mutations\n * @param {any} request - request to cancel\n * @returns - A boolean indicating if the request was cancelled\n */\n cancel(request, message) {\n return this._api.cancelREST(request, message);\n }\n _graphqlSubscribe(amplify, { query, variables, authMode }, additionalHeaders = {}, customUserAgentDetails, authToken) {\n const config = resolveConfig(amplify);\n /**\n * Retrieve library options from Amplify configuration.\n * `libraryConfigHeaders` are from the Amplify configuration options,\n * and will not be overwritten by other custom headers. These are *not*\n * the same as `additionalHeaders`, which are custom headers that are\n * either 1)included when configuring the API client or 2) passed along\n * with individual requests.\n */\n const { headers: libraryConfigHeaders } = resolveLibraryOptions(amplify);\n return this.appSyncRealTime\n .subscribe({\n query: print(query),\n variables,\n appSyncGraphqlEndpoint: config?.endpoint,\n region: config?.region,\n authenticationType: authMode || config?.defaultAuthMode,\n apiKey: config?.apiKey,\n additionalHeaders,\n authToken,\n libraryConfigHeaders,\n }, customUserAgentDetails)\n .pipe(catchError(e => {\n if (e.errors) {\n throw repackageUnauthError(e);\n }\n throw e;\n }));\n }\n}\nexport const InternalGraphQLAPI = new InternalGraphQLAPIClass();\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 ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return 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\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 * 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 _nodeLocations, _nodeLocations2, _nodeLocations3;\n\n var _this;\n\n _classCallCheck(this, GraphQLError);\n\n _this = _super.call(this, message);\n _this.name = 'GraphQLError';\n _this.originalError = originalError !== null && originalError !== void 0 ? originalError : undefined; // Compute list of blame nodes.\n\n _this.nodes = undefinedIfEmpty(Array.isArray(nodes) ? nodes : nodes ? [nodes] : undefined);\n var nodeLocations = [];\n\n for (var _i2 = 0, _ref3 = (_this$nodes = _this.nodes) !== null && _this$nodes !== void 0 ? _this$nodes : []; _i2 < _ref3.length; _i2++) {\n var _this$nodes;\n\n var _ref4 = _ref3[_i2];\n var loc = _ref4.loc;\n\n if (loc != null) {\n nodeLocations.push(loc);\n }\n }\n\n nodeLocations = undefinedIfEmpty(nodeLocations); // Compute locations in the source for the given nodes/positions.\n\n _this.source = source !== null && source !== void 0 ? source : (_nodeLocations = nodeLocations) === null || _nodeLocations === void 0 ? void 0 : _nodeLocations[0].source;\n _this.positions = positions !== null && positions !== void 0 ? positions : (_nodeLocations2 = nodeLocations) === null || _nodeLocations2 === void 0 ? void 0 : _nodeLocations2.map(function (loc) {\n return loc.start;\n });\n _this.locations = positions && source ? positions.map(function (pos) {\n return getLocation(source, pos);\n }) : (_nodeLocations3 = nodeLocations) === null || _nodeLocations3 === void 0 ? void 0 : _nodeLocations3.map(function (loc) {\n return getLocation(loc.source, loc.start);\n });\n _this.path = path !== null && path !== void 0 ? path : undefined;\n var originalExtensions = originalError === null || originalError === void 0 ? void 0 : originalError.extensions;\n\n if (extensions == null && isObjectLike(originalExtensions)) {\n _this.extensions = _objectSpread({}, originalExtensions);\n } else {\n _this.extensions = extensions !== null && extensions !== void 0 ? extensions : {};\n } // By being enumerable, JSON.stringify will include bellow properties in the resulting output.\n // This ensures that the simplest possible GraphQL service adheres to the spec.\n\n\n Object.defineProperties(_assertThisInitialized(_this), {\n message: {\n enumerable: true\n },\n locations: {\n enumerable: _this.locations != null\n },\n path: {\n enumerable: _this.path != null\n },\n extensions: {\n enumerable: _this.extensions != null && Object.keys(_this.extensions).length > 0\n },\n name: {\n enumerable: false\n },\n nodes: {\n enumerable: false\n },\n source: {\n enumerable: false\n },\n positions: {\n enumerable: false\n },\n originalError: {\n enumerable: false\n }\n }); // Include (non-enumerable) stack trace.\n\n if (originalError !== null && originalError !== 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\nfunction undefinedIfEmpty(array) {\n return array === undefined || array.length === 0 ? undefined : array;\n}\n/**\n * Prints a GraphQLError to a string, representing useful location information\n * about the error's position in the source.\n */\n\n\nexport function printError(error) {\n var output = error.message;\n\n if (error.nodes) {\n for (var _i4 = 0, _error$nodes2 = error.nodes; _i4 < _error$nodes2.length; _i4++) {\n var node = _error$nodes2[_i4];\n\n if (node.loc) {\n output += '\\n\\n' + printLocation(node.loc);\n }\n }\n } else if (error.source && error.locations) {\n for (var _i6 = 0, _error$locations2 = error.locations; _i6 < _error$locations2.length; _i6++) {\n var location = _error$locations2[_i6];\n output += '\\n\\n' + printSourceLocation(error.source, location);\n }\n }\n\n return output;\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\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","// 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 * 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","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","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","/**\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","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","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","export default function invariant(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 != null ? message : 'Unexpected invariant triggered.');\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","/**\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","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","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","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 _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\nimport inspect from \"./inspect.mjs\";\n/**\n * A replacement for instanceof which includes an error warning when multi-realm\n * constructors are detected.\n */\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 (_typeof(value) === 'object' && value !== null) {\n var _value$constructor;\n\n var className = constructor.prototype[Symbol.toStringTag];\n var valueClassName = // We still need to support constructor's name to detect conflicts with older versions of this library.\n Symbol.toStringTag in value ? value[Symbol.toStringTag] : (_value$constructor = value.constructor) === null || _value$constructor === void 0 ? void 0 : _value$constructor.name;\n\n if (className === valueClassName) {\n var stringifiedValue = inspect(value);\n throw new Error(\"Cannot use \".concat(className, \" \\\"\").concat(stringifiedValue, \"\\\" 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","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","/**\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","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 inspect from \"../jsutils/inspect.mjs\";\nimport { isNode } from \"./ast.mjs\";\n/**\n * A visitor is provided to visit, it contains the collection of\n * relevant functions to be called during the visitor's traversal.\n */\n\nexport var QueryDocumentKeys = {\n Name: [],\n Document: ['definitions'],\n OperationDefinition: ['name', 'variableDefinitions', 'directives', 'selectionSet'],\n VariableDefinition: ['variable', 'type', 'defaultValue', 'directives'],\n Variable: ['name'],\n SelectionSet: ['selections'],\n Field: ['alias', 'name', 'arguments', 'directives', 'selectionSet'],\n Argument: ['name', 'value'],\n FragmentSpread: ['name', 'directives'],\n InlineFragment: ['typeCondition', 'directives', 'selectionSet'],\n FragmentDefinition: ['name', // Note: fragment variable definitions are experimental and may be changed\n // or removed in the future.\n 'variableDefinitions', 'typeCondition', 'directives', 'selectionSet'],\n IntValue: [],\n FloatValue: [],\n StringValue: [],\n BooleanValue: [],\n NullValue: [],\n EnumValue: [],\n ListValue: ['values'],\n ObjectValue: ['fields'],\n ObjectField: ['name', 'value'],\n Directive: ['name', 'arguments'],\n NamedType: ['name'],\n ListType: ['type'],\n NonNullType: ['type'],\n SchemaDefinition: ['description', 'directives', 'operationTypes'],\n OperationTypeDefinition: ['type'],\n ScalarTypeDefinition: ['description', 'name', 'directives'],\n ObjectTypeDefinition: ['description', 'name', 'interfaces', 'directives', 'fields'],\n FieldDefinition: ['description', 'name', 'arguments', 'type', 'directives'],\n InputValueDefinition: ['description', 'name', 'type', 'defaultValue', 'directives'],\n InterfaceTypeDefinition: ['description', 'name', 'interfaces', 'directives', 'fields'],\n UnionTypeDefinition: ['description', 'name', 'directives', 'types'],\n EnumTypeDefinition: ['description', 'name', 'directives', 'values'],\n EnumValueDefinition: ['description', 'name', 'directives'],\n InputObjectTypeDefinition: ['description', 'name', 'directives', 'fields'],\n DirectiveDefinition: ['description', 'name', 'arguments', 'locations'],\n SchemaExtension: ['directives', 'operationTypes'],\n ScalarTypeExtension: ['name', 'directives'],\n ObjectTypeExtension: ['name', 'interfaces', 'directives', 'fields'],\n InterfaceTypeExtension: ['name', 'interfaces', 'directives', 'fields'],\n UnionTypeExtension: ['name', 'directives', 'types'],\n EnumTypeExtension: ['name', 'directives', 'values'],\n InputObjectTypeExtension: ['name', 'directives', 'fields']\n};\nexport var BREAK = Object.freeze({});\n/**\n * visit() will walk through an AST using a depth-first traversal, calling\n * the visitor's enter function at each node in the traversal, and calling the\n * leave function after visiting that node and all of its child nodes.\n *\n * By returning different values from the enter and leave functions, the\n * behavior of the visitor can be altered, including skipping over a sub-tree of\n * the AST (by returning false), editing the AST by returning a value or null\n * to remove the value, or to stop the whole traversal by returning BREAK.\n *\n * When using visit() to edit an AST, the original AST will not be modified, and\n * a new version of the AST with the changes applied will be returned from the\n * visit function.\n *\n * const editedAST = visit(ast, {\n * enter(node, key, parent, path, ancestors) {\n * // @return\n * // undefined: no action\n * // false: skip visiting this node\n * // visitor.BREAK: stop visiting altogether\n * // null: delete this node\n * // any value: replace this node with the returned value\n * },\n * leave(node, key, parent, path, ancestors) {\n * // @return\n * // undefined: no action\n * // false: no action\n * // visitor.BREAK: stop visiting altogether\n * // null: delete this node\n * // any value: replace this node with the returned value\n * }\n * });\n *\n * Alternatively to providing enter() and leave() functions, a visitor can\n * instead provide functions named the same as the kinds of AST nodes, or\n * enter/leave visitors at a named key, leading to four permutations of the\n * visitor API:\n *\n * 1) Named visitors triggered when entering a node of a specific kind.\n *\n * visit(ast, {\n * Kind(node) {\n * // enter the \"Kind\" node\n * }\n * })\n *\n * 2) Named visitors that trigger upon entering and leaving a node of\n * a specific kind.\n *\n * visit(ast, {\n * Kind: {\n * enter(node) {\n * // enter the \"Kind\" node\n * }\n * leave(node) {\n * // leave the \"Kind\" node\n * }\n * }\n * })\n *\n * 3) Generic visitors that trigger upon entering and leaving any node.\n *\n * visit(ast, {\n * enter(node) {\n * // enter any node\n * },\n * leave(node) {\n * // leave any node\n * }\n * })\n *\n * 4) Parallel visitors for entering and leaving nodes of a specific kind.\n *\n * visit(ast, {\n * enter: {\n * Kind(node) {\n * // enter the \"Kind\" node\n * }\n * },\n * leave: {\n * Kind(node) {\n * // leave the \"Kind\" node\n * }\n * }\n * })\n */\n\nexport function visit(root, visitor) {\n var visitorKeys = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : QueryDocumentKeys;\n\n /* eslint-disable no-undef-init */\n var stack = undefined;\n var inArray = Array.isArray(root);\n var keys = [root];\n var index = -1;\n var edits = [];\n var node = undefined;\n var key = undefined;\n var parent = undefined;\n var path = [];\n var ancestors = [];\n var newRoot = root;\n /* eslint-enable no-undef-init */\n\n do {\n index++;\n var isLeaving = index === keys.length;\n var isEdited = isLeaving && edits.length !== 0;\n\n if (isLeaving) {\n key = ancestors.length === 0 ? undefined : path[path.length - 1];\n node = parent;\n parent = ancestors.pop();\n\n if (isEdited) {\n if (inArray) {\n node = node.slice();\n } else {\n var clone = {};\n\n for (var _i2 = 0, _Object$keys2 = Object.keys(node); _i2 < _Object$keys2.length; _i2++) {\n var k = _Object$keys2[_i2];\n clone[k] = node[k];\n }\n\n node = clone;\n }\n\n var editOffset = 0;\n\n for (var ii = 0; ii < edits.length; ii++) {\n var editKey = edits[ii][0];\n var editValue = edits[ii][1];\n\n if (inArray) {\n editKey -= editOffset;\n }\n\n if (inArray && editValue === null) {\n node.splice(editKey, 1);\n editOffset++;\n } else {\n node[editKey] = editValue;\n }\n }\n }\n\n index = stack.index;\n keys = stack.keys;\n edits = stack.edits;\n inArray = stack.inArray;\n stack = stack.prev;\n } else {\n key = parent ? inArray ? index : keys[index] : undefined;\n node = parent ? parent[key] : newRoot;\n\n if (node === null || node === undefined) {\n continue;\n }\n\n if (parent) {\n path.push(key);\n }\n }\n\n var result = void 0;\n\n if (!Array.isArray(node)) {\n if (!isNode(node)) {\n throw new Error(\"Invalid AST Node: \".concat(inspect(node), \".\"));\n }\n\n var visitFn = getVisitFn(visitor, node.kind, isLeaving);\n\n if (visitFn) {\n result = visitFn.call(visitor, node, key, parent, path, ancestors);\n\n if (result === BREAK) {\n break;\n }\n\n if (result === false) {\n if (!isLeaving) {\n path.pop();\n continue;\n }\n } else if (result !== undefined) {\n edits.push([key, result]);\n\n if (!isLeaving) {\n if (isNode(result)) {\n node = result;\n } else {\n path.pop();\n continue;\n }\n }\n }\n }\n }\n\n if (result === undefined && isEdited) {\n edits.push([key, node]);\n }\n\n if (isLeaving) {\n path.pop();\n } else {\n var _visitorKeys$node$kin;\n\n stack = {\n inArray: inArray,\n index: index,\n keys: keys,\n edits: edits,\n prev: stack\n };\n inArray = Array.isArray(node);\n keys = inArray ? node : (_visitorKeys$node$kin = visitorKeys[node.kind]) !== null && _visitorKeys$node$kin !== void 0 ? _visitorKeys$node$kin : [];\n index = -1;\n edits = [];\n\n if (parent) {\n ancestors.push(parent);\n }\n\n parent = node;\n }\n } while (stack !== undefined);\n\n if (edits.length !== 0) {\n newRoot = edits[edits.length - 1][1];\n }\n\n return newRoot;\n}\n/**\n * Creates a new visitor instance which delegates to many visitors to run in\n * parallel. Each visitor will be visited for each node before moving on.\n *\n * If a prior visitor edits a node, no following visitors will see that node.\n */\n\nexport function visitInParallel(visitors) {\n var skipping = new Array(visitors.length);\n return {\n enter: function enter(node) {\n for (var i = 0; i < visitors.length; i++) {\n if (skipping[i] == null) {\n var fn = getVisitFn(visitors[i], node.kind,\n /* isLeaving */\n false);\n\n if (fn) {\n var result = fn.apply(visitors[i], arguments);\n\n if (result === false) {\n skipping[i] = node;\n } else if (result === BREAK) {\n skipping[i] = BREAK;\n } else if (result !== undefined) {\n return result;\n }\n }\n }\n }\n },\n leave: function leave(node) {\n for (var i = 0; i < visitors.length; i++) {\n if (skipping[i] == null) {\n var fn = getVisitFn(visitors[i], node.kind,\n /* isLeaving */\n true);\n\n if (fn) {\n var result = fn.apply(visitors[i], arguments);\n\n if (result === BREAK) {\n skipping[i] = BREAK;\n } else if (result !== undefined && result !== false) {\n return result;\n }\n }\n } else if (skipping[i] === node) {\n skipping[i] = null;\n }\n }\n }\n };\n}\n/**\n * Given a visitor instance, if it is leaving or not, and a node kind, return\n * the function the visitor runtime should call.\n */\n\nexport function getVisitFn(visitor, kind, isLeaving) {\n var kindVisitor = visitor[kind];\n\n if (kindVisitor) {\n if (!isLeaving && typeof kindVisitor === 'function') {\n // { Kind() {} }\n return kindVisitor;\n }\n\n var kindSpecificVisitor = isLeaving ? kindVisitor.leave : kindVisitor.enter;\n\n if (typeof kindSpecificVisitor === 'function') {\n // { Kind: { enter() {}, leave() {} } }\n return kindSpecificVisitor;\n }\n } else {\n var specificVisitor = isLeaving ? visitor.leave : visitor.enter;\n\n if (specificVisitor) {\n if (typeof specificVisitor === 'function') {\n // { enter() {}, leave() {} }\n return specificVisitor;\n }\n\n var specificKindVisitor = specificVisitor[kind];\n\n if (typeof specificKindVisitor === 'function') {\n // { enter: { Kind() {} }, leave: { Kind() {} } }\n return specificKindVisitor;\n }\n }\n }\n}\n","import { innerFrom } from '../observable/innerFrom';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { operate } from '../util/lift';\nexport function catchError(selector) {\n return operate(function (source, subscriber) {\n var innerSub = null;\n var syncUnsub = false;\n var handledResult;\n innerSub = source.subscribe(createOperatorSubscriber(subscriber, undefined, undefined, function (err) {\n handledResult = innerFrom(selector(err, catchError(selector)(source)));\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n }\n else {\n syncUnsub = true;\n }\n }));\n if (syncUnsub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n }\n });\n}\n//# sourceMappingURL=catchError.js.map","import { Observable } from '../Observable';\n\nimport { ObservableInput, OperatorFunction, ObservedValueOf } from '../types';\nimport { Subscription } from '../Subscription';\nimport { innerFrom } from '../observable/innerFrom';\nimport { createOperatorSubscriber } from './OperatorSubscriber';\nimport { operate } from '../util/lift';\n\n/* tslint:disable:max-line-length */\nexport function catchError>(\n selector: (err: any, caught: Observable) => O\n): OperatorFunction>;\n/* tslint:enable:max-line-length */\n\n/**\n * Catches errors on the observable to be handled by returning a new observable or throwing an error.\n *\n * \n * It only listens to the error channel and ignores notifications.\n * Handles errors from the source observable, and maps them to a new observable.\n * The error may also be rethrown, or a new error can be thrown to emit an error from the result.\n * \n *\n * ![](catch.png)\n *\n * This operator handles errors, but forwards along all other events to the resulting observable.\n * If the source observable terminates with an error, it will map that error to a new observable,\n * subscribe to it, and forward all of its events to the resulting observable.\n *\n * ## Examples\n *\n * Continue with a different Observable when there's an error\n *\n * ```ts\n * import { of, map, catchError } from 'rxjs';\n *\n * of(1, 2, 3, 4, 5)\n * .pipe(\n * map(n => {\n * if (n === 4) {\n * throw 'four!';\n * }\n * return n;\n * }),\n * catchError(err => of('I', 'II', 'III', 'IV', 'V'))\n * )\n * .subscribe(x => console.log(x));\n * // 1, 2, 3, I, II, III, IV, V\n * ```\n *\n * Retry the caught source Observable again in case of error, similar to `retry()` operator\n *\n * ```ts\n * import { of, map, catchError, take } from 'rxjs';\n *\n * of(1, 2, 3, 4, 5)\n * .pipe(\n * map(n => {\n * if (n === 4) {\n * throw 'four!';\n * }\n * return n;\n * }),\n * catchError((err, caught) => caught),\n * take(30)\n * )\n * .subscribe(x => console.log(x));\n * // 1, 2, 3, 1, 2, 3, ...\n * ```\n *\n * Throw a new error when the source Observable throws an error\n *\n * ```ts\n * import { of, map, catchError } from 'rxjs';\n *\n * of(1, 2, 3, 4, 5)\n * .pipe(\n * map(n => {\n * if (n === 4) {\n * throw 'four!';\n * }\n * return n;\n * }),\n * catchError(err => {\n * throw 'error in source. Details: ' + err;\n * })\n * )\n * .subscribe({\n * next: x => console.log(x),\n * error: err => console.log(err)\n * });\n * // 1, 2, 3, error in source. Details: four!\n * ```\n *\n * @see {@link onErrorResumeNext}\n * @see {@link repeat}\n * @see {@link repeatWhen}\n * @see {@link retry }\n * @see {@link retryWhen}\n *\n * @param {function} selector a function that takes as arguments `err`, which is the error, and `caught`, which\n * is the source observable, in case you'd like to \"retry\" that observable by returning it again. Whatever observable\n * is returned by the `selector` will be used to continue the observable chain.\n * @return A function that returns an Observable that originates from either\n * the source or the Observable returned by the `selector` function.\n */\nexport function catchError>(\n selector: (err: any, caught: Observable) => O\n): OperatorFunction> {\n return operate((source, subscriber) => {\n let innerSub: Subscription | null = null;\n let syncUnsub = false;\n let handledResult: Observable>;\n\n innerSub = source.subscribe(\n createOperatorSubscriber(subscriber, undefined, undefined, (err) => {\n handledResult = innerFrom(selector(err, catchError(selector)(source)));\n if (innerSub) {\n innerSub.unsubscribe();\n innerSub = null;\n handledResult.subscribe(subscriber);\n } else {\n // We don't have an innerSub yet, that means the error was synchronous\n // because the subscribe call hasn't returned yet.\n syncUnsub = true;\n }\n })\n );\n\n if (syncUnsub) {\n // We have a synchronous error, we need to make sure to\n // finalize right away. This ensures that callbacks in the `finalize` operator are called\n // at the right time, and that finalization occurs at the expected\n // time between the source error and the subscription to the\n // next observable.\n innerSub.unsubscribe();\n innerSub = null;\n handledResult!.subscribe(subscriber);\n }\n });\n}\n","import { __asyncValues, __awaiter, __generator, __values } from \"tslib\";\nimport { isArrayLike } from '../util/isArrayLike';\nimport { isPromise } from '../util/isPromise';\nimport { Observable } from '../Observable';\nimport { isInteropObservable } from '../util/isInteropObservable';\nimport { isAsyncIterable } from '../util/isAsyncIterable';\nimport { createInvalidObservableTypeError } from '../util/throwUnobservableError';\nimport { isIterable } from '../util/isIterable';\nimport { isReadableStreamLike, readableStreamLikeToAsyncGenerator } from '../util/isReadableStreamLike';\nimport { isFunction } from '../util/isFunction';\nimport { reportUnhandledError } from '../util/reportUnhandledError';\nimport { observable as Symbol_observable } from '../symbol/observable';\nexport function innerFrom(input) {\n if (input instanceof Observable) {\n return input;\n }\n if (input != null) {\n if (isInteropObservable(input)) {\n return fromInteropObservable(input);\n }\n if (isArrayLike(input)) {\n return fromArrayLike(input);\n }\n if (isPromise(input)) {\n return fromPromise(input);\n }\n if (isAsyncIterable(input)) {\n return fromAsyncIterable(input);\n }\n if (isIterable(input)) {\n return fromIterable(input);\n }\n if (isReadableStreamLike(input)) {\n return fromReadableStreamLike(input);\n }\n }\n throw createInvalidObservableTypeError(input);\n}\nexport function fromInteropObservable(obj) {\n return new Observable(function (subscriber) {\n var obs = obj[Symbol_observable]();\n if (isFunction(obs.subscribe)) {\n return obs.subscribe(subscriber);\n }\n throw new TypeError('Provided object does not correctly implement Symbol.observable');\n });\n}\nexport function fromArrayLike(array) {\n return new Observable(function (subscriber) {\n for (var i = 0; i < array.length && !subscriber.closed; i++) {\n subscriber.next(array[i]);\n }\n subscriber.complete();\n });\n}\nexport function fromPromise(promise) {\n return new Observable(function (subscriber) {\n promise\n .then(function (value) {\n if (!subscriber.closed) {\n subscriber.next(value);\n subscriber.complete();\n }\n }, function (err) { return subscriber.error(err); })\n .then(null, reportUnhandledError);\n });\n}\nexport function fromIterable(iterable) {\n return new Observable(function (subscriber) {\n var e_1, _a;\n try {\n for (var iterable_1 = __values(iterable), iterable_1_1 = iterable_1.next(); !iterable_1_1.done; iterable_1_1 = iterable_1.next()) {\n var value = iterable_1_1.value;\n subscriber.next(value);\n if (subscriber.closed) {\n return;\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (iterable_1_1 && !iterable_1_1.done && (_a = iterable_1.return)) _a.call(iterable_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n subscriber.complete();\n });\n}\nexport function fromAsyncIterable(asyncIterable) {\n return new Observable(function (subscriber) {\n process(asyncIterable, subscriber).catch(function (err) { return subscriber.error(err); });\n });\n}\nexport function fromReadableStreamLike(readableStream) {\n return fromAsyncIterable(readableStreamLikeToAsyncGenerator(readableStream));\n}\nfunction process(asyncIterable, subscriber) {\n var asyncIterable_1, asyncIterable_1_1;\n var e_2, _a;\n return __awaiter(this, void 0, void 0, function () {\n var value, e_2_1;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _b.trys.push([0, 5, 6, 11]);\n asyncIterable_1 = __asyncValues(asyncIterable);\n _b.label = 1;\n case 1: return [4, asyncIterable_1.next()];\n case 2:\n if (!(asyncIterable_1_1 = _b.sent(), !asyncIterable_1_1.done)) return [3, 4];\n value = asyncIterable_1_1.value;\n subscriber.next(value);\n if (subscriber.closed) {\n return [2];\n }\n _b.label = 3;\n case 3: return [3, 1];\n case 4: return [3, 11];\n case 5:\n e_2_1 = _b.sent();\n e_2 = { error: e_2_1 };\n return [3, 11];\n case 6:\n _b.trys.push([6, , 9, 10]);\n if (!(asyncIterable_1_1 && !asyncIterable_1_1.done && (_a = asyncIterable_1.return))) return [3, 8];\n return [4, _a.call(asyncIterable_1)];\n case 7:\n _b.sent();\n _b.label = 8;\n case 8: return [3, 10];\n case 9:\n if (e_2) throw e_2.error;\n return [7];\n case 10: return [7];\n case 11:\n subscriber.complete();\n return [2];\n }\n });\n });\n}\n//# sourceMappingURL=innerFrom.js.map","import { isArrayLike } from '../util/isArrayLike';\nimport { isPromise } from '../util/isPromise';\nimport { Observable } from '../Observable';\nimport { ObservableInput, ObservedValueOf, ReadableStreamLike } from '../types';\nimport { isInteropObservable } from '../util/isInteropObservable';\nimport { isAsyncIterable } from '../util/isAsyncIterable';\nimport { createInvalidObservableTypeError } from '../util/throwUnobservableError';\nimport { isIterable } from '../util/isIterable';\nimport { isReadableStreamLike, readableStreamLikeToAsyncGenerator } from '../util/isReadableStreamLike';\nimport { Subscriber } from '../Subscriber';\nimport { isFunction } from '../util/isFunction';\nimport { reportUnhandledError } from '../util/reportUnhandledError';\nimport { observable as Symbol_observable } from '../symbol/observable';\n\nexport function innerFrom>(input: O): Observable>;\nexport function innerFrom(input: ObservableInput): Observable {\n if (input instanceof Observable) {\n return input;\n }\n if (input != null) {\n if (isInteropObservable(input)) {\n return fromInteropObservable(input);\n }\n if (isArrayLike(input)) {\n return fromArrayLike(input);\n }\n if (isPromise(input)) {\n return fromPromise(input);\n }\n if (isAsyncIterable(input)) {\n return fromAsyncIterable(input);\n }\n if (isIterable(input)) {\n return fromIterable(input);\n }\n if (isReadableStreamLike(input)) {\n return fromReadableStreamLike(input);\n }\n }\n\n throw createInvalidObservableTypeError(input);\n}\n\n/**\n * Creates an RxJS Observable from an object that implements `Symbol.observable`.\n * @param obj An object that properly implements `Symbol.observable`.\n */\nexport function fromInteropObservable(obj: any) {\n return new Observable((subscriber: Subscriber) => {\n const obs = obj[Symbol_observable]();\n if (isFunction(obs.subscribe)) {\n return obs.subscribe(subscriber);\n }\n // Should be caught by observable subscribe function error handling.\n throw new TypeError('Provided object does not correctly implement Symbol.observable');\n });\n}\n\n/**\n * Synchronously emits the values of an array like and completes.\n * This is exported because there are creation functions and operators that need to\n * make direct use of the same logic, and there's no reason to make them run through\n * `from` conditionals because we *know* they're dealing with an array.\n * @param array The array to emit values from\n */\nexport function fromArrayLike(array: ArrayLike) {\n return new Observable((subscriber: Subscriber) => {\n // Loop over the array and emit each value. Note two things here:\n // 1. We're making sure that the subscriber is not closed on each loop.\n // This is so we don't continue looping over a very large array after\n // something like a `take`, `takeWhile`, or other synchronous unsubscription\n // has already unsubscribed.\n // 2. In this form, reentrant code can alter that array we're looping over.\n // This is a known issue, but considered an edge case. The alternative would\n // be to copy the array before executing the loop, but this has\n // performance implications.\n for (let i = 0; i < array.length && !subscriber.closed; i++) {\n subscriber.next(array[i]);\n }\n subscriber.complete();\n });\n}\n\nexport function fromPromise(promise: PromiseLike) {\n return new Observable((subscriber: Subscriber) => {\n promise\n .then(\n (value) => {\n if (!subscriber.closed) {\n subscriber.next(value);\n subscriber.complete();\n }\n },\n (err: any) => subscriber.error(err)\n )\n .then(null, reportUnhandledError);\n });\n}\n\nexport function fromIterable(iterable: Iterable) {\n return new Observable((subscriber: Subscriber) => {\n for (const value of iterable) {\n subscriber.next(value);\n if (subscriber.closed) {\n return;\n }\n }\n subscriber.complete();\n });\n}\n\nexport function fromAsyncIterable(asyncIterable: AsyncIterable) {\n return new Observable((subscriber: Subscriber) => {\n process(asyncIterable, subscriber).catch((err) => subscriber.error(err));\n });\n}\n\nexport function fromReadableStreamLike(readableStream: ReadableStreamLike) {\n return fromAsyncIterable(readableStreamLikeToAsyncGenerator(readableStream));\n}\n\nasync function process(asyncIterable: AsyncIterable, subscriber: Subscriber) {\n for await (const value of asyncIterable) {\n subscriber.next(value);\n // A side-effect may have closed our subscriber,\n // check before the next iteration.\n if (subscriber.closed) {\n return;\n }\n }\n subscriber.complete();\n}\n","export var isArrayLike = (function (x) { return x && typeof x.length === 'number' && typeof x !== 'function'; });\n//# sourceMappingURL=isArrayLike.js.map","export const isArrayLike = ((x: any): x is ArrayLike => x && typeof x.length === 'number' && typeof x !== 'function');","import { isFunction } from \"./isFunction\";\nexport function isPromise(value) {\n return isFunction(value === null || value === void 0 ? void 0 : value.then);\n}\n//# sourceMappingURL=isPromise.js.map","import { isFunction } from \"./isFunction\";\n\n/**\n * Tests to see if the object is \"thennable\".\n * @param value the object to test\n */\nexport function isPromise(value: any): value is PromiseLike {\n return isFunction(value?.then);\n}\n","export function isFunction(value) {\n return typeof value === 'function';\n}\n//# sourceMappingURL=isFunction.js.map","/**\n * Returns true if the object is a function.\n * @param value The value to check\n */\nexport function isFunction(value: any): value is (...args: any[]) => any {\n return typeof value === 'function';\n}\n","import { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription } from './Subscription';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nimport { errorContext } from './util/errorContext';\nvar Observable = (function () {\n function Observable(subscribe) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n Observable.prototype.lift = function (operator) {\n var observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n };\n Observable.prototype.subscribe = function (observerOrNext, error, complete) {\n var _this = this;\n var subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n errorContext(function () {\n var _a = _this, operator = _a.operator, source = _a.source;\n subscriber.add(operator\n ?\n operator.call(subscriber, source)\n : source\n ?\n _this._subscribe(subscriber)\n :\n _this._trySubscribe(subscriber));\n });\n return subscriber;\n };\n Observable.prototype._trySubscribe = function (sink) {\n try {\n return this._subscribe(sink);\n }\n catch (err) {\n sink.error(err);\n }\n };\n Observable.prototype.forEach = function (next, promiseCtor) {\n var _this = this;\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor(function (resolve, reject) {\n var subscriber = new SafeSubscriber({\n next: function (value) {\n try {\n next(value);\n }\n catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve,\n });\n _this.subscribe(subscriber);\n });\n };\n Observable.prototype._subscribe = function (subscriber) {\n var _a;\n return (_a = this.source) === null || _a === void 0 ? void 0 : _a.subscribe(subscriber);\n };\n Observable.prototype[Symbol_observable] = function () {\n return this;\n };\n Observable.prototype.pipe = function () {\n var operations = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n operations[_i] = arguments[_i];\n }\n return pipeFromArray(operations)(this);\n };\n Observable.prototype.toPromise = function (promiseCtor) {\n var _this = this;\n promiseCtor = getPromiseCtor(promiseCtor);\n return new promiseCtor(function (resolve, reject) {\n var value;\n _this.subscribe(function (x) { return (value = x); }, function (err) { return reject(err); }, function () { return resolve(value); });\n });\n };\n Observable.create = function (subscribe) {\n return new Observable(subscribe);\n };\n return Observable;\n}());\nexport { Observable };\nfunction getPromiseCtor(promiseCtor) {\n var _a;\n return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config.Promise) !== null && _a !== void 0 ? _a : Promise;\n}\nfunction isObserver(value) {\n return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\nfunction isSubscriber(value) {\n return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n//# sourceMappingURL=Observable.js.map","import { Operator } from './Operator';\nimport { SafeSubscriber, Subscriber } from './Subscriber';\nimport { isSubscription, Subscription } from './Subscription';\nimport { TeardownLogic, OperatorFunction, Subscribable, Observer } from './types';\nimport { observable as Symbol_observable } from './symbol/observable';\nimport { pipeFromArray } from './util/pipe';\nimport { config } from './config';\nimport { isFunction } from './util/isFunction';\nimport { errorContext } from './util/errorContext';\n\n/**\n * A representation of any set of values over any amount of time. This is the most basic building block\n * of RxJS.\n *\n * @class Observable\n */\nexport class Observable implements Subscribable {\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n source: Observable | undefined;\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n */\n operator: Operator | undefined;\n\n /**\n * @constructor\n * @param {Function} subscribe the function that is called when the Observable is\n * initially subscribed to. This function is given a Subscriber, to which new values\n * can be `next`ed, or an `error` method can be called to raise an error, or\n * `complete` can be called to notify of a successful completion.\n */\n constructor(subscribe?: (this: Observable, subscriber: Subscriber) => TeardownLogic) {\n if (subscribe) {\n this._subscribe = subscribe;\n }\n }\n\n // HACK: Since TypeScript inherits static properties too, we have to\n // fight against TypeScript here so Subject can have a different static create signature\n /**\n * Creates a new Observable by calling the Observable constructor\n * @owner Observable\n * @method create\n * @param {Function} subscribe? the subscriber function to be passed to the Observable constructor\n * @return {Observable} a new observable\n * @nocollapse\n * @deprecated Use `new Observable()` instead. Will be removed in v8.\n */\n static create: (...args: any[]) => any = (subscribe?: (subscriber: Subscriber) => TeardownLogic) => {\n return new Observable(subscribe);\n };\n\n /**\n * Creates a new Observable, with this Observable instance as the source, and the passed\n * operator defined as the new observable's operator.\n * @method lift\n * @param operator the operator defining the operation to take on the observable\n * @return a new observable with the Operator applied\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * If you have implemented an operator using `lift`, it is recommended that you create an\n * operator by simply returning `new Observable()` directly. See \"Creating new operators from\n * scratch\" section here: https://rxjs.dev/guide/operators\n */\n lift(operator?: Operator): Observable {\n const observable = new Observable();\n observable.source = this;\n observable.operator = operator;\n return observable;\n }\n\n subscribe(observerOrNext?: Partial> | ((value: T) => void)): Subscription;\n /** @deprecated Instead of passing separate callback arguments, use an observer argument. Signatures taking separate callback arguments will be removed in v8. Details: https://rxjs.dev/deprecations/subscribe-arguments */\n subscribe(next?: ((value: T) => void) | null, error?: ((error: any) => void) | null, complete?: (() => void) | null): Subscription;\n /**\n * Invokes an execution of an Observable and registers Observer handlers for notifications it will emit.\n *\n * Use it when you have all these Observables, but still nothing is happening.\n *\n * `subscribe` is not a regular operator, but a method that calls Observable's internal `subscribe` function. It\n * might be for example a function that you passed to Observable's constructor, but most of the time it is\n * a library implementation, which defines what will be emitted by an Observable, and when it be will emitted. This means\n * that calling `subscribe` is actually the moment when Observable starts its work, not when it is created, as it is often\n * the thought.\n *\n * Apart from starting the execution of an Observable, this method allows you to listen for values\n * that an Observable emits, as well as for when it completes or errors. You can achieve this in two\n * of the following ways.\n *\n * The first way is creating an object that implements {@link Observer} interface. It should have methods\n * defined by that interface, but note that it should be just a regular JavaScript object, which you can create\n * yourself in any way you want (ES6 class, classic function constructor, object literal etc.). In particular, do\n * not attempt to use any RxJS implementation details to create Observers - you don't need them. Remember also\n * that your object does not have to implement all methods. If you find yourself creating a method that doesn't\n * do anything, you can simply omit it. Note however, if the `error` method is not provided and an error happens,\n * it will be thrown asynchronously. Errors thrown asynchronously cannot be caught using `try`/`catch`. Instead,\n * use the {@link onUnhandledError} configuration option or use a runtime handler (like `window.onerror` or\n * `process.on('error)`) to be notified of unhandled errors. Because of this, it's recommended that you provide\n * an `error` method to avoid missing thrown errors.\n *\n * The second way is to give up on Observer object altogether and simply provide callback functions in place of its methods.\n * This means you can provide three functions as arguments to `subscribe`, where the first function is equivalent\n * of a `next` method, the second of an `error` method and the third of a `complete` method. Just as in case of an Observer,\n * if you do not need to listen for something, you can omit a function by passing `undefined` or `null`,\n * since `subscribe` recognizes these functions by where they were placed in function call. When it comes\n * to the `error` function, as with an Observer, if not provided, errors emitted by an Observable will be thrown asynchronously.\n *\n * You can, however, subscribe with no parameters at all. This may be the case where you're not interested in terminal events\n * and you also handled emissions internally by using operators (e.g. using `tap`).\n *\n * Whichever style of calling `subscribe` you use, in both cases it returns a Subscription object.\n * This object allows you to call `unsubscribe` on it, which in turn will stop the work that an Observable does and will clean\n * up all resources that an Observable used. Note that cancelling a subscription will not call `complete` callback\n * provided to `subscribe` function, which is reserved for a regular completion signal that comes from an Observable.\n *\n * Remember that callbacks provided to `subscribe` are not guaranteed to be called asynchronously.\n * It is an Observable itself that decides when these functions will be called. For example {@link of}\n * by default emits all its values synchronously. Always check documentation for how given Observable\n * will behave when subscribed and if its default behavior can be modified with a `scheduler`.\n *\n * #### Examples\n *\n * Subscribe with an {@link guide/observer Observer}\n *\n * ```ts\n * import { of } from 'rxjs';\n *\n * const sumObserver = {\n * sum: 0,\n * next(value) {\n * console.log('Adding: ' + value);\n * this.sum = this.sum + value;\n * },\n * error() {\n * // We actually could just remove this method,\n * // since we do not really care about errors right now.\n * },\n * complete() {\n * console.log('Sum equals: ' + this.sum);\n * }\n * };\n *\n * of(1, 2, 3) // Synchronously emits 1, 2, 3 and then completes.\n * .subscribe(sumObserver);\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Subscribe with functions ({@link deprecations/subscribe-arguments deprecated})\n *\n * ```ts\n * import { of } from 'rxjs'\n *\n * let sum = 0;\n *\n * of(1, 2, 3).subscribe(\n * value => {\n * console.log('Adding: ' + value);\n * sum = sum + value;\n * },\n * undefined,\n * () => console.log('Sum equals: ' + sum)\n * );\n *\n * // Logs:\n * // 'Adding: 1'\n * // 'Adding: 2'\n * // 'Adding: 3'\n * // 'Sum equals: 6'\n * ```\n *\n * Cancel a subscription\n *\n * ```ts\n * import { interval } from 'rxjs';\n *\n * const subscription = interval(1000).subscribe({\n * next(num) {\n * console.log(num)\n * },\n * complete() {\n * // Will not be called, even when cancelling subscription.\n * console.log('completed!');\n * }\n * });\n *\n * setTimeout(() => {\n * subscription.unsubscribe();\n * console.log('unsubscribed!');\n * }, 2500);\n *\n * // Logs:\n * // 0 after 1s\n * // 1 after 2s\n * // 'unsubscribed!' after 2.5s\n * ```\n *\n * @param {Observer|Function} observerOrNext (optional) Either an observer with methods to be called,\n * or the first of three possible handlers, which is the handler for each value emitted from the subscribed\n * Observable.\n * @param {Function} error (optional) A handler for a terminal event resulting from an error. If no error handler is provided,\n * the error will be thrown asynchronously as unhandled.\n * @param {Function} complete (optional) A handler for a terminal event resulting from successful completion.\n * @return {Subscription} a subscription reference to the registered handlers\n * @method subscribe\n */\n subscribe(\n observerOrNext?: Partial> | ((value: T) => void) | null,\n error?: ((error: any) => void) | null,\n complete?: (() => void) | null\n ): Subscription {\n const subscriber = isSubscriber(observerOrNext) ? observerOrNext : new SafeSubscriber(observerOrNext, error, complete);\n\n errorContext(() => {\n const { operator, source } = this;\n subscriber.add(\n operator\n ? // We're dealing with a subscription in the\n // operator chain to one of our lifted operators.\n operator.call(subscriber, source)\n : source\n ? // If `source` has a value, but `operator` does not, something that\n // had intimate knowledge of our API, like our `Subject`, must have\n // set it. We're going to just call `_subscribe` directly.\n this._subscribe(subscriber)\n : // In all other cases, we're likely wrapping a user-provided initializer\n // function, so we need to catch errors and handle them appropriately.\n this._trySubscribe(subscriber)\n );\n });\n\n return subscriber;\n }\n\n /** @internal */\n protected _trySubscribe(sink: Subscriber): TeardownLogic {\n try {\n return this._subscribe(sink);\n } catch (err) {\n // We don't need to return anything in this case,\n // because it's just going to try to `add()` to a subscription\n // above.\n sink.error(err);\n }\n }\n\n /**\n * Used as a NON-CANCELLABLE means of subscribing to an observable, for use with\n * APIs that expect promises, like `async/await`. You cannot unsubscribe from this.\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * #### Example\n *\n * ```ts\n * import { interval, take } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(4));\n *\n * async function getTotal() {\n * let total = 0;\n *\n * await source$.forEach(value => {\n * total += value;\n * console.log('observable -> ' + value);\n * });\n *\n * return total;\n * }\n *\n * getTotal().then(\n * total => console.log('Total: ' + total)\n * );\n *\n * // Expected:\n * // 'observable -> 0'\n * // 'observable -> 1'\n * // 'observable -> 2'\n * // 'observable -> 3'\n * // 'Total: 6'\n * ```\n *\n * @param next a handler for each value emitted by the observable\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n */\n forEach(next: (value: T) => void): Promise;\n\n /**\n * @param next a handler for each value emitted by the observable\n * @param promiseCtor a constructor function used to instantiate the Promise\n * @return a promise that either resolves on observable completion or\n * rejects with the handled error\n * @deprecated Passing a Promise constructor will no longer be available\n * in upcoming versions of RxJS. This is because it adds weight to the library, for very\n * little benefit. If you need this functionality, it is recommended that you either\n * polyfill Promise, or you create an adapter to convert the returned native promise\n * to whatever promise implementation you wanted. Will be removed in v8.\n */\n forEach(next: (value: T) => void, promiseCtor: PromiseConstructorLike): Promise;\n\n forEach(next: (value: T) => void, promiseCtor?: PromiseConstructorLike): Promise {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n const subscriber = new SafeSubscriber({\n next: (value) => {\n try {\n next(value);\n } catch (err) {\n reject(err);\n subscriber.unsubscribe();\n }\n },\n error: reject,\n complete: resolve,\n });\n this.subscribe(subscriber);\n }) as Promise;\n }\n\n /** @internal */\n protected _subscribe(subscriber: Subscriber): TeardownLogic {\n return this.source?.subscribe(subscriber);\n }\n\n /**\n * An interop point defined by the es7-observable spec https://github.com/zenparsing/es-observable\n * @method Symbol.observable\n * @return {Observable} this instance of the observable\n */\n [Symbol_observable]() {\n return this;\n }\n\n /* tslint:disable:max-line-length */\n pipe(): Observable;\n pipe(op1: OperatorFunction): Observable;\n pipe(op1: OperatorFunction, op2: OperatorFunction): Observable;\n pipe(op1: OperatorFunction, op2: OperatorFunction, op3: OperatorFunction): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction,\n op9: OperatorFunction\n ): Observable;\n pipe(\n op1: OperatorFunction,\n op2: OperatorFunction,\n op3: OperatorFunction,\n op4: OperatorFunction,\n op5: OperatorFunction,\n op6: OperatorFunction,\n op7: OperatorFunction,\n op8: OperatorFunction,\n op9: OperatorFunction,\n ...operations: OperatorFunction[]\n ): Observable;\n /* tslint:enable:max-line-length */\n\n /**\n * Used to stitch together functional operators into a chain.\n * @method pipe\n * @return {Observable} the Observable result of all of the operators having\n * been called in the order they were passed in.\n *\n * ## Example\n *\n * ```ts\n * import { interval, filter, map, scan } from 'rxjs';\n *\n * interval(1000)\n * .pipe(\n * filter(x => x % 2 === 0),\n * map(x => x + x),\n * scan((acc, x) => acc + x)\n * )\n * .subscribe(x => console.log(x));\n * ```\n */\n pipe(...operations: OperatorFunction[]): Observable {\n return pipeFromArray(operations)(this);\n }\n\n /* tslint:disable:max-line-length */\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(): Promise;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: typeof Promise): Promise;\n /** @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise */\n toPromise(PromiseCtor: PromiseConstructorLike): Promise;\n /* tslint:enable:max-line-length */\n\n /**\n * Subscribe to this Observable and get a Promise resolving on\n * `complete` with the last emission (if any).\n *\n * **WARNING**: Only use this with observables you *know* will complete. If the source\n * observable does not complete, you will end up with a promise that is hung up, and\n * potentially all of the state of an async function hanging out in memory. To avoid\n * this situation, look into adding something like {@link timeout}, {@link take},\n * {@link takeWhile}, or {@link takeUntil} amongst others.\n *\n * @method toPromise\n * @param [promiseCtor] a constructor function used to instantiate\n * the Promise\n * @return A Promise that resolves with the last value emit, or\n * rejects on an error. If there were no emissions, Promise\n * resolves with undefined.\n * @deprecated Replaced with {@link firstValueFrom} and {@link lastValueFrom}. Will be removed in v8. Details: https://rxjs.dev/deprecations/to-promise\n */\n toPromise(promiseCtor?: PromiseConstructorLike): Promise {\n promiseCtor = getPromiseCtor(promiseCtor);\n\n return new promiseCtor((resolve, reject) => {\n let value: T | undefined;\n this.subscribe(\n (x: T) => (value = x),\n (err: any) => reject(err),\n () => resolve(value)\n );\n }) as Promise;\n }\n}\n\n/**\n * Decides between a passed promise constructor from consuming code,\n * A default configured promise constructor, and the native promise\n * constructor and returns it. If nothing can be found, it will throw\n * an error.\n * @param promiseCtor The optional promise constructor to passed by consuming code\n */\nfunction getPromiseCtor(promiseCtor: PromiseConstructorLike | undefined) {\n return promiseCtor ?? config.Promise ?? Promise;\n}\n\nfunction isObserver(value: any): value is Observer {\n return value && isFunction(value.next) && isFunction(value.error) && isFunction(value.complete);\n}\n\nfunction isSubscriber(value: any): value is Subscriber {\n return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));\n}\n","import { __extends } from \"tslib\";\nimport { isFunction } from './util/isFunction';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\nvar Subscriber = (function (_super) {\n __extends(Subscriber, _super);\n function Subscriber(destination) {\n var _this = _super.call(this) || this;\n _this.isStopped = false;\n if (destination) {\n _this.destination = destination;\n if (isSubscription(destination)) {\n destination.add(_this);\n }\n }\n else {\n _this.destination = EMPTY_OBSERVER;\n }\n return _this;\n }\n Subscriber.create = function (next, error, complete) {\n return new SafeSubscriber(next, error, complete);\n };\n Subscriber.prototype.next = function (value) {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n }\n else {\n this._next(value);\n }\n };\n Subscriber.prototype.error = function (err) {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n }\n else {\n this.isStopped = true;\n this._error(err);\n }\n };\n Subscriber.prototype.complete = function () {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n }\n else {\n this.isStopped = true;\n this._complete();\n }\n };\n Subscriber.prototype.unsubscribe = function () {\n if (!this.closed) {\n this.isStopped = true;\n _super.prototype.unsubscribe.call(this);\n this.destination = null;\n }\n };\n Subscriber.prototype._next = function (value) {\n this.destination.next(value);\n };\n Subscriber.prototype._error = function (err) {\n try {\n this.destination.error(err);\n }\n finally {\n this.unsubscribe();\n }\n };\n Subscriber.prototype._complete = function () {\n try {\n this.destination.complete();\n }\n finally {\n this.unsubscribe();\n }\n };\n return Subscriber;\n}(Subscription));\nexport { Subscriber };\nvar _bind = Function.prototype.bind;\nfunction bind(fn, thisArg) {\n return _bind.call(fn, thisArg);\n}\nvar ConsumerObserver = (function () {\n function ConsumerObserver(partialObserver) {\n this.partialObserver = partialObserver;\n }\n ConsumerObserver.prototype.next = function (value) {\n var partialObserver = this.partialObserver;\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n };\n ConsumerObserver.prototype.error = function (err) {\n var partialObserver = this.partialObserver;\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n else {\n handleUnhandledError(err);\n }\n };\n ConsumerObserver.prototype.complete = function () {\n var partialObserver = this.partialObserver;\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n }\n catch (error) {\n handleUnhandledError(error);\n }\n }\n };\n return ConsumerObserver;\n}());\nvar SafeSubscriber = (function (_super) {\n __extends(SafeSubscriber, _super);\n function SafeSubscriber(observerOrNext, error, complete) {\n var _this = _super.call(this) || this;\n var partialObserver;\n if (isFunction(observerOrNext) || !observerOrNext) {\n partialObserver = {\n next: (observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : undefined),\n error: error !== null && error !== void 0 ? error : undefined,\n complete: complete !== null && complete !== void 0 ? complete : undefined,\n };\n }\n else {\n var context_1;\n if (_this && config.useDeprecatedNextContext) {\n context_1 = Object.create(observerOrNext);\n context_1.unsubscribe = function () { return _this.unsubscribe(); };\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context_1),\n error: observerOrNext.error && bind(observerOrNext.error, context_1),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context_1),\n };\n }\n else {\n partialObserver = observerOrNext;\n }\n }\n _this.destination = new ConsumerObserver(partialObserver);\n return _this;\n }\n return SafeSubscriber;\n}(Subscriber));\nexport { SafeSubscriber };\nfunction handleUnhandledError(error) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n captureError(error);\n }\n else {\n reportUnhandledError(error);\n }\n}\nfunction defaultErrorHandler(err) {\n throw err;\n}\nfunction handleStoppedNotification(notification, subscriber) {\n var onStoppedNotification = config.onStoppedNotification;\n onStoppedNotification && timeoutProvider.setTimeout(function () { return onStoppedNotification(notification, subscriber); });\n}\nexport var EMPTY_OBSERVER = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop,\n};\n//# sourceMappingURL=Subscriber.js.map","import { isFunction } from './util/isFunction';\nimport { Observer, ObservableNotification } from './types';\nimport { isSubscription, Subscription } from './Subscription';\nimport { config } from './config';\nimport { reportUnhandledError } from './util/reportUnhandledError';\nimport { noop } from './util/noop';\nimport { nextNotification, errorNotification, COMPLETE_NOTIFICATION } from './NotificationFactories';\nimport { timeoutProvider } from './scheduler/timeoutProvider';\nimport { captureError } from './util/errorContext';\n\n/**\n * Implements the {@link Observer} interface and extends the\n * {@link Subscription} class. While the {@link Observer} is the public API for\n * consuming the values of an {@link Observable}, all Observers get converted to\n * a Subscriber, in order to provide Subscription-like capabilities such as\n * `unsubscribe`. Subscriber is a common type in RxJS, and crucial for\n * implementing operators, but it is rarely used as a public API.\n *\n * @class Subscriber\n */\nexport class Subscriber extends Subscription implements Observer {\n /**\n * A static factory for a Subscriber, given a (potentially partial) definition\n * of an Observer.\n * @param next The `next` callback of an Observer.\n * @param error The `error` callback of an\n * Observer.\n * @param complete The `complete` callback of an\n * Observer.\n * @return A Subscriber wrapping the (partially defined)\n * Observer represented by the given arguments.\n * @nocollapse\n * @deprecated Do not use. Will be removed in v8. There is no replacement for this\n * method, and there is no reason to be creating instances of `Subscriber` directly.\n * If you have a specific use case, please file an issue.\n */\n static create(next?: (x?: T) => void, error?: (e?: any) => void, complete?: () => void): Subscriber {\n return new SafeSubscriber(next, error, complete);\n }\n\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected isStopped: boolean = false;\n /** @deprecated Internal implementation detail, do not use directly. Will be made internal in v8. */\n protected destination: Subscriber | Observer; // this `any` is the escape hatch to erase extra type param (e.g. R)\n\n /**\n * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.\n * There is no reason to directly create an instance of Subscriber. This type is exported for typings reasons.\n */\n constructor(destination?: Subscriber | Observer) {\n super();\n if (destination) {\n this.destination = destination;\n // Automatically chain subscriptions together here.\n // if destination is a Subscription, then it is a Subscriber.\n if (isSubscription(destination)) {\n destination.add(this);\n }\n } else {\n this.destination = EMPTY_OBSERVER;\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `next` from\n * the Observable, with a value. The Observable may call this method 0 or more\n * times.\n * @param {T} [value] The `next` value.\n * @return {void}\n */\n next(value?: T): void {\n if (this.isStopped) {\n handleStoppedNotification(nextNotification(value), this);\n } else {\n this._next(value!);\n }\n }\n\n /**\n * The {@link Observer} callback to receive notifications of type `error` from\n * the Observable, with an attached `Error`. Notifies the Observer that\n * the Observable has experienced an error condition.\n * @param {any} [err] The `error` exception.\n * @return {void}\n */\n error(err?: any): void {\n if (this.isStopped) {\n handleStoppedNotification(errorNotification(err), this);\n } else {\n this.isStopped = true;\n this._error(err);\n }\n }\n\n /**\n * The {@link Observer} callback to receive a valueless notification of type\n * `complete` from the Observable. Notifies the Observer that the Observable\n * has finished sending push-based notifications.\n * @return {void}\n */\n complete(): void {\n if (this.isStopped) {\n handleStoppedNotification(COMPLETE_NOTIFICATION, this);\n } else {\n this.isStopped = true;\n this._complete();\n }\n }\n\n unsubscribe(): void {\n if (!this.closed) {\n this.isStopped = true;\n super.unsubscribe();\n this.destination = null!;\n }\n }\n\n protected _next(value: T): void {\n this.destination.next(value);\n }\n\n protected _error(err: any): void {\n try {\n this.destination.error(err);\n } finally {\n this.unsubscribe();\n }\n }\n\n protected _complete(): void {\n try {\n this.destination.complete();\n } finally {\n this.unsubscribe();\n }\n }\n}\n\n/**\n * This bind is captured here because we want to be able to have\n * compatibility with monoid libraries that tend to use a method named\n * `bind`. In particular, a library called Monio requires this.\n */\nconst _bind = Function.prototype.bind;\n\nfunction bind any>(fn: Fn, thisArg: any): Fn {\n return _bind.call(fn, thisArg);\n}\n\n/**\n * Internal optimization only, DO NOT EXPOSE.\n * @internal\n */\nclass ConsumerObserver implements Observer {\n constructor(private partialObserver: Partial>) {}\n\n next(value: T): void {\n const { partialObserver } = this;\n if (partialObserver.next) {\n try {\n partialObserver.next(value);\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n\n error(err: any): void {\n const { partialObserver } = this;\n if (partialObserver.error) {\n try {\n partialObserver.error(err);\n } catch (error) {\n handleUnhandledError(error);\n }\n } else {\n handleUnhandledError(err);\n }\n }\n\n complete(): void {\n const { partialObserver } = this;\n if (partialObserver.complete) {\n try {\n partialObserver.complete();\n } catch (error) {\n handleUnhandledError(error);\n }\n }\n }\n}\n\nexport class SafeSubscriber extends Subscriber {\n constructor(\n observerOrNext?: Partial> | ((value: T) => void) | null,\n error?: ((e?: any) => void) | null,\n complete?: (() => void) | null\n ) {\n super();\n\n let partialObserver: Partial>;\n if (isFunction(observerOrNext) || !observerOrNext) {\n // The first argument is a function, not an observer. The next\n // two arguments *could* be observers, or they could be empty.\n partialObserver = {\n next: (observerOrNext ?? undefined) as (((value: T) => void) | undefined),\n error: error ?? undefined,\n complete: complete ?? undefined,\n };\n } else {\n // The first argument is a partial observer.\n let context: any;\n if (this && config.useDeprecatedNextContext) {\n // This is a deprecated path that made `this.unsubscribe()` available in\n // next handler functions passed to subscribe. This only exists behind a flag\n // now, as it is *very* slow.\n context = Object.create(observerOrNext);\n context.unsubscribe = () => this.unsubscribe();\n partialObserver = {\n next: observerOrNext.next && bind(observerOrNext.next, context),\n error: observerOrNext.error && bind(observerOrNext.error, context),\n complete: observerOrNext.complete && bind(observerOrNext.complete, context),\n };\n } else {\n // The \"normal\" path. Just use the partial observer directly.\n partialObserver = observerOrNext;\n }\n }\n\n // Wrap the partial observer to ensure it's a full observer, and\n // make sure proper error handling is accounted for.\n this.destination = new ConsumerObserver(partialObserver);\n }\n}\n\nfunction handleUnhandledError(error: any) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n captureError(error);\n } else {\n // Ideal path, we report this as an unhandled error,\n // which is thrown on a new call stack.\n reportUnhandledError(error);\n }\n}\n\n/**\n * An error handler used when no error handler was supplied\n * to the SafeSubscriber -- meaning no error handler was supplied\n * do the `subscribe` call on our observable.\n * @param err The error to handle\n */\nfunction defaultErrorHandler(err: any) {\n throw err;\n}\n\n/**\n * A handler for notifications that cannot be sent to a stopped subscriber.\n * @param notification The notification being sent\n * @param subscriber The stopped subscriber\n */\nfunction handleStoppedNotification(notification: ObservableNotification, subscriber: Subscriber) {\n const { onStoppedNotification } = config;\n onStoppedNotification && timeoutProvider.setTimeout(() => onStoppedNotification(notification, subscriber));\n}\n\n/**\n * The observer used as a stub for subscriptions where the user did not\n * pass any arguments to `subscribe`. Comes with the default error handling\n * behavior.\n */\nexport const EMPTY_OBSERVER: Readonly> & { closed: true } = {\n closed: true,\n next: noop,\n error: defaultErrorHandler,\n complete: noop,\n};\n","import { __read, __spreadArray, __values } from \"tslib\";\nimport { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { arrRemove } from './util/arrRemove';\nvar Subscription = (function () {\n function Subscription(initialTeardown) {\n this.initialTeardown = initialTeardown;\n this.closed = false;\n this._parentage = null;\n this._finalizers = null;\n }\n Subscription.prototype.unsubscribe = function () {\n var e_1, _a, e_2, _b;\n var errors;\n if (!this.closed) {\n this.closed = true;\n var _parentage = this._parentage;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) {\n try {\n for (var _parentage_1 = __values(_parentage), _parentage_1_1 = _parentage_1.next(); !_parentage_1_1.done; _parentage_1_1 = _parentage_1.next()) {\n var parent_1 = _parentage_1_1.value;\n parent_1.remove(this);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_parentage_1_1 && !_parentage_1_1.done && (_a = _parentage_1.return)) _a.call(_parentage_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }\n else {\n _parentage.remove(this);\n }\n }\n var initialFinalizer = this.initialTeardown;\n if (isFunction(initialFinalizer)) {\n try {\n initialFinalizer();\n }\n catch (e) {\n errors = e instanceof UnsubscriptionError ? e.errors : [e];\n }\n }\n var _finalizers = this._finalizers;\n if (_finalizers) {\n this._finalizers = null;\n try {\n for (var _finalizers_1 = __values(_finalizers), _finalizers_1_1 = _finalizers_1.next(); !_finalizers_1_1.done; _finalizers_1_1 = _finalizers_1.next()) {\n var finalizer = _finalizers_1_1.value;\n try {\n execFinalizer(finalizer);\n }\n catch (err) {\n errors = errors !== null && errors !== void 0 ? errors : [];\n if (err instanceof UnsubscriptionError) {\n errors = __spreadArray(__spreadArray([], __read(errors)), __read(err.errors));\n }\n else {\n errors.push(err);\n }\n }\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (_finalizers_1_1 && !_finalizers_1_1.done && (_b = _finalizers_1.return)) _b.call(_finalizers_1);\n }\n finally { if (e_2) throw e_2.error; }\n }\n }\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n };\n Subscription.prototype.add = function (teardown) {\n var _a;\n if (teardown && teardown !== this) {\n if (this.closed) {\n execFinalizer(teardown);\n }\n else {\n if (teardown instanceof Subscription) {\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._finalizers = (_a = this._finalizers) !== null && _a !== void 0 ? _a : []).push(teardown);\n }\n }\n };\n Subscription.prototype._hasParent = function (parent) {\n var _parentage = this._parentage;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n };\n Subscription.prototype._addParent = function (parent) {\n var _parentage = this._parentage;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n };\n Subscription.prototype._removeParent = function (parent) {\n var _parentage = this._parentage;\n if (_parentage === parent) {\n this._parentage = null;\n }\n else if (Array.isArray(_parentage)) {\n arrRemove(_parentage, parent);\n }\n };\n Subscription.prototype.remove = function (teardown) {\n var _finalizers = this._finalizers;\n _finalizers && arrRemove(_finalizers, teardown);\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n };\n Subscription.EMPTY = (function () {\n var empty = new Subscription();\n empty.closed = true;\n return empty;\n })();\n return Subscription;\n}());\nexport { Subscription };\nexport var EMPTY_SUBSCRIPTION = Subscription.EMPTY;\nexport function isSubscription(value) {\n return (value instanceof Subscription ||\n (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe)));\n}\nfunction execFinalizer(finalizer) {\n if (isFunction(finalizer)) {\n finalizer();\n }\n else {\n finalizer.unsubscribe();\n }\n}\n//# sourceMappingURL=Subscription.js.map","import { isFunction } from './util/isFunction';\nimport { UnsubscriptionError } from './util/UnsubscriptionError';\nimport { SubscriptionLike, TeardownLogic, Unsubscribable } from './types';\nimport { arrRemove } from './util/arrRemove';\n\n/**\n * Represents a disposable resource, such as the execution of an Observable. A\n * Subscription has one important method, `unsubscribe`, that takes no argument\n * and just disposes the resource held by the subscription.\n *\n * Additionally, subscriptions may be grouped together through the `add()`\n * method, which will attach a child Subscription to the current Subscription.\n * When a Subscription is unsubscribed, all its children (and its grandchildren)\n * will be unsubscribed as well.\n *\n * @class Subscription\n */\nexport class Subscription implements SubscriptionLike {\n /** @nocollapse */\n public static EMPTY = (() => {\n const empty = new Subscription();\n empty.closed = true;\n return empty;\n })();\n\n /**\n * A flag to indicate whether this Subscription has already been unsubscribed.\n */\n public closed = false;\n\n private _parentage: Subscription[] | Subscription | null = null;\n\n /**\n * The list of registered finalizers to execute upon unsubscription. Adding and removing from this\n * list occurs in the {@link #add} and {@link #remove} methods.\n */\n private _finalizers: Exclude[] | null = null;\n\n /**\n * @param initialTeardown A function executed first as part of the finalization\n * process that is kicked off when {@link #unsubscribe} is called.\n */\n constructor(private initialTeardown?: () => void) {}\n\n /**\n * Disposes the resources held by the subscription. May, for instance, cancel\n * an ongoing Observable execution or cancel any other type of work that\n * started when the Subscription was created.\n * @return {void}\n */\n unsubscribe(): void {\n let errors: any[] | undefined;\n\n if (!this.closed) {\n this.closed = true;\n\n // Remove this from it's parents.\n const { _parentage } = this;\n if (_parentage) {\n this._parentage = null;\n if (Array.isArray(_parentage)) {\n for (const parent of _parentage) {\n parent.remove(this);\n }\n } else {\n _parentage.remove(this);\n }\n }\n\n const { initialTeardown: initialFinalizer } = this;\n if (isFunction(initialFinalizer)) {\n try {\n initialFinalizer();\n } catch (e) {\n errors = e instanceof UnsubscriptionError ? e.errors : [e];\n }\n }\n\n const { _finalizers } = this;\n if (_finalizers) {\n this._finalizers = null;\n for (const finalizer of _finalizers) {\n try {\n execFinalizer(finalizer);\n } catch (err) {\n errors = errors ?? [];\n if (err instanceof UnsubscriptionError) {\n errors = [...errors, ...err.errors];\n } else {\n errors.push(err);\n }\n }\n }\n }\n\n if (errors) {\n throw new UnsubscriptionError(errors);\n }\n }\n }\n\n /**\n * Adds a finalizer to this subscription, so that finalization will be unsubscribed/called\n * when this subscription is unsubscribed. If this subscription is already {@link #closed},\n * because it has already been unsubscribed, then whatever finalizer is passed to it\n * will automatically be executed (unless the finalizer itself is also a closed subscription).\n *\n * Closed Subscriptions cannot be added as finalizers to any subscription. Adding a closed\n * subscription to a any subscription will result in no operation. (A noop).\n *\n * Adding a subscription to itself, or adding `null` or `undefined` will not perform any\n * operation at all. (A noop).\n *\n * `Subscription` instances that are added to this instance will automatically remove themselves\n * if they are unsubscribed. Functions and {@link Unsubscribable} objects that you wish to remove\n * will need to be removed manually with {@link #remove}\n *\n * @param teardown The finalization logic to add to this subscription.\n */\n add(teardown: TeardownLogic): void {\n // Only add the finalizer if it's not undefined\n // and don't add a subscription to itself.\n if (teardown && teardown !== this) {\n if (this.closed) {\n // If this subscription is already closed,\n // execute whatever finalizer is handed to it automatically.\n execFinalizer(teardown);\n } else {\n if (teardown instanceof Subscription) {\n // We don't add closed subscriptions, and we don't add the same subscription\n // twice. Subscription unsubscribe is idempotent.\n if (teardown.closed || teardown._hasParent(this)) {\n return;\n }\n teardown._addParent(this);\n }\n (this._finalizers = this._finalizers ?? []).push(teardown);\n }\n }\n }\n\n /**\n * Checks to see if a this subscription already has a particular parent.\n * This will signal that this subscription has already been added to the parent in question.\n * @param parent the parent to check for\n */\n private _hasParent(parent: Subscription) {\n const { _parentage } = this;\n return _parentage === parent || (Array.isArray(_parentage) && _parentage.includes(parent));\n }\n\n /**\n * Adds a parent to this subscription so it can be removed from the parent if it\n * unsubscribes on it's own.\n *\n * NOTE: THIS ASSUMES THAT {@link _hasParent} HAS ALREADY BEEN CHECKED.\n * @param parent The parent subscription to add\n */\n private _addParent(parent: Subscription) {\n const { _parentage } = this;\n this._parentage = Array.isArray(_parentage) ? (_parentage.push(parent), _parentage) : _parentage ? [_parentage, parent] : parent;\n }\n\n /**\n * Called on a child when it is removed via {@link #remove}.\n * @param parent The parent to remove\n */\n private _removeParent(parent: Subscription) {\n const { _parentage } = this;\n if (_parentage === parent) {\n this._parentage = null;\n } else if (Array.isArray(_parentage)) {\n arrRemove(_parentage, parent);\n }\n }\n\n /**\n * Removes a finalizer from this subscription that was previously added with the {@link #add} method.\n *\n * Note that `Subscription` instances, when unsubscribed, will automatically remove themselves\n * from every other `Subscription` they have been added to. This means that using the `remove` method\n * is not a common thing and should be used thoughtfully.\n *\n * If you add the same finalizer instance of a function or an unsubscribable object to a `Subscription` instance\n * more than once, you will need to call `remove` the same number of times to remove all instances.\n *\n * All finalizer instances are removed to free up memory upon unsubscription.\n *\n * @param teardown The finalizer to remove from this subscription\n */\n remove(teardown: Exclude): void {\n const { _finalizers } = this;\n _finalizers && arrRemove(_finalizers, teardown);\n\n if (teardown instanceof Subscription) {\n teardown._removeParent(this);\n }\n }\n}\n\nexport const EMPTY_SUBSCRIPTION = Subscription.EMPTY;\n\nexport function isSubscription(value: any): value is Subscription {\n return (\n value instanceof Subscription ||\n (value && 'closed' in value && isFunction(value.remove) && isFunction(value.add) && isFunction(value.unsubscribe))\n );\n}\n\nfunction execFinalizer(finalizer: Unsubscribable | (() => void)) {\n if (isFunction(finalizer)) {\n finalizer();\n } else {\n finalizer.unsubscribe();\n }\n}\n","import { createErrorClass } from './createErrorClass';\nexport var UnsubscriptionError = createErrorClass(function (_super) {\n return function UnsubscriptionErrorImpl(errors) {\n _super(this);\n this.message = errors\n ? errors.length + \" errors occurred during unsubscription:\\n\" + errors.map(function (err, i) { return i + 1 + \") \" + err.toString(); }).join('\\n ')\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n };\n});\n//# sourceMappingURL=UnsubscriptionError.js.map","import { createErrorClass } from './createErrorClass';\n\nexport interface UnsubscriptionError extends Error {\n readonly errors: any[];\n}\n\nexport interface UnsubscriptionErrorCtor {\n /**\n * @deprecated Internal implementation detail. Do not construct error instances.\n * Cannot be tagged as internal: https://github.com/ReactiveX/rxjs/issues/6269\n */\n new (errors: any[]): UnsubscriptionError;\n}\n\n/**\n * An error thrown when one or more errors have occurred during the\n * `unsubscribe` of a {@link Subscription}.\n */\nexport const UnsubscriptionError: UnsubscriptionErrorCtor = createErrorClass(\n (_super) =>\n function UnsubscriptionErrorImpl(this: any, errors: (Error | string)[]) {\n _super(this);\n this.message = errors\n ? `${errors.length} errors occurred during unsubscription:\n${errors.map((err, i) => `${i + 1}) ${err.toString()}`).join('\\n ')}`\n : '';\n this.name = 'UnsubscriptionError';\n this.errors = errors;\n }\n);\n","export function createErrorClass(createImpl) {\n var _super = function (instance) {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n var ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n//# sourceMappingURL=createErrorClass.js.map","/**\n * Used to create Error subclasses until the community moves away from ES5.\n *\n * This is because compiling from TypeScript down to ES5 has issues with subclassing Errors\n * as well as other built-in types: https://github.com/Microsoft/TypeScript/issues/12123\n *\n * @param createImpl A factory function to create the actual constructor implementation. The returned\n * function should be a named function that calls `_super` internally.\n */\nexport function createErrorClass(createImpl: (_super: any) => any): T {\n const _super = (instance: any) => {\n Error.call(instance);\n instance.stack = new Error().stack;\n };\n\n const ctorFunc = createImpl(_super);\n ctorFunc.prototype = Object.create(Error.prototype);\n ctorFunc.prototype.constructor = ctorFunc;\n return ctorFunc;\n}\n","export function arrRemove(arr, item) {\n if (arr) {\n var index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n//# sourceMappingURL=arrRemove.js.map","/**\n * Removes an item from an array, mutating it.\n * @param arr The array to remove the item from\n * @param item The item to remove\n */\nexport function arrRemove(arr: T[] | undefined | null, item: T) {\n if (arr) {\n const index = arr.indexOf(item);\n 0 <= index && arr.splice(index, 1);\n }\n}\n","export var config = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n//# sourceMappingURL=config.js.map","import { Subscriber } from './Subscriber';\nimport { ObservableNotification } from './types';\n\n/**\n * The {@link GlobalConfig} object for RxJS. It is used to configure things\n * like how to react on unhandled errors.\n */\nexport const config: GlobalConfig = {\n onUnhandledError: null,\n onStoppedNotification: null,\n Promise: undefined,\n useDeprecatedSynchronousErrorHandling: false,\n useDeprecatedNextContext: false,\n};\n\n/**\n * The global configuration object for RxJS, used to configure things\n * like how to react on unhandled errors. Accessible via {@link config}\n * object.\n */\nexport interface GlobalConfig {\n /**\n * A registration point for unhandled errors from RxJS. These are errors that\n * cannot were not handled by consuming code in the usual subscription path. For\n * example, if you have this configured, and you subscribe to an observable without\n * providing an error handler, errors from that subscription will end up here. This\n * will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onUnhandledError: ((err: any) => void) | null;\n\n /**\n * A registration point for notifications that cannot be sent to subscribers because they\n * have completed, errored or have been explicitly unsubscribed. By default, next, complete\n * and error notifications sent to stopped subscribers are noops. However, sometimes callers\n * might want a different behavior. For example, with sources that attempt to report errors\n * to stopped subscribers, a caller can configure RxJS to throw an unhandled error instead.\n * This will _always_ be called asynchronously on another job in the runtime. This is because\n * we do not want errors thrown in this user-configured handler to interfere with the\n * behavior of the library.\n */\n onStoppedNotification: ((notification: ObservableNotification, subscriber: Subscriber) => void) | null;\n\n /**\n * The promise constructor used by default for {@link Observable#toPromise toPromise} and {@link Observable#forEach forEach}\n * methods.\n *\n * @deprecated As of version 8, RxJS will no longer support this sort of injection of a\n * Promise constructor. If you need a Promise implementation other than native promises,\n * please polyfill/patch Promise as you see appropriate. Will be removed in v8.\n */\n Promise?: PromiseConstructorLike;\n\n /**\n * If true, turns on synchronous error rethrowing, which is a deprecated behavior\n * in v6 and higher. This behavior enables bad patterns like wrapping a subscribe\n * call in a try/catch block. It also enables producer interference, a nasty bug\n * where a multicast can be broken for all observers by a downstream consumer with\n * an unhandled error. DO NOT USE THIS FLAG UNLESS IT'S NEEDED TO BUY TIME\n * FOR MIGRATION REASONS.\n *\n * @deprecated As of version 8, RxJS will no longer support synchronous throwing\n * of unhandled errors. All errors will be thrown on a separate call stack to prevent bad\n * behaviors described above. Will be removed in v8.\n */\n useDeprecatedSynchronousErrorHandling: boolean;\n\n /**\n * If true, enables an as-of-yet undocumented feature from v5: The ability to access\n * `unsubscribe()` via `this` context in `next` functions created in observers passed\n * to `subscribe`.\n *\n * This is being removed because the performance was severely problematic, and it could also cause\n * issues when types other than POJOs are passed to subscribe as subscribers, as they will likely have\n * their `this` context overwritten.\n *\n * @deprecated As of version 8, RxJS will no longer support altering the\n * context of next functions provided as part of an observer to Subscribe. Instead,\n * you will have access to a subscription or a signal or token that will allow you to do things like\n * unsubscribe and test closed status. Will be removed in v8.\n */\n useDeprecatedNextContext: boolean;\n}\n","import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\nexport function reportUnhandledError(err) {\n timeoutProvider.setTimeout(function () {\n var onUnhandledError = config.onUnhandledError;\n if (onUnhandledError) {\n onUnhandledError(err);\n }\n else {\n throw err;\n }\n });\n}\n//# sourceMappingURL=reportUnhandledError.js.map","import { config } from '../config';\nimport { timeoutProvider } from '../scheduler/timeoutProvider';\n\n/**\n * Handles an error on another job either with the user-configured {@link onUnhandledError},\n * or by throwing it on that new job so it can be picked up by `window.onerror`, `process.on('error')`, etc.\n *\n * This should be called whenever there is an error that is out-of-band with the subscription\n * or when an error hits a terminal boundary of the subscription and no error handler was provided.\n *\n * @param err the error to report\n */\nexport function reportUnhandledError(err: any) {\n timeoutProvider.setTimeout(() => {\n const { onUnhandledError } = config;\n if (onUnhandledError) {\n // Execute the user-configured error handler.\n onUnhandledError(err);\n } else {\n // Throw so it is picked up by the runtime's uncaught error mechanism.\n throw err;\n }\n });\n}\n","import { __read, __spreadArray } from \"tslib\";\nexport var timeoutProvider = {\n setTimeout: function (handler, timeout) {\n var args = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n args[_i - 2] = arguments[_i];\n }\n var delegate = timeoutProvider.delegate;\n if (delegate === null || delegate === void 0 ? void 0 : delegate.setTimeout) {\n return delegate.setTimeout.apply(delegate, __spreadArray([handler, timeout], __read(args)));\n }\n return setTimeout.apply(void 0, __spreadArray([handler, timeout], __read(args)));\n },\n clearTimeout: function (handle) {\n var delegate = timeoutProvider.delegate;\n return ((delegate === null || delegate === void 0 ? void 0 : delegate.clearTimeout) || clearTimeout)(handle);\n },\n delegate: undefined,\n};\n//# sourceMappingURL=timeoutProvider.js.map","import type { TimerHandle } from './timerHandle';\ntype SetTimeoutFunction = (handler: () => void, timeout?: number, ...args: any[]) => TimerHandle;\ntype ClearTimeoutFunction = (handle: TimerHandle) => void;\n\ninterface TimeoutProvider {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n delegate:\n | {\n setTimeout: SetTimeoutFunction;\n clearTimeout: ClearTimeoutFunction;\n }\n | undefined;\n}\n\nexport const timeoutProvider: TimeoutProvider = {\n // When accessing the delegate, use the variable rather than `this` so that\n // the functions can be called without being bound to the provider.\n setTimeout(handler: () => void, timeout?: number, ...args) {\n const { delegate } = timeoutProvider;\n if (delegate?.setTimeout) {\n return delegate.setTimeout(handler, timeout, ...args);\n }\n return setTimeout(handler, timeout, ...args);\n },\n clearTimeout(handle) {\n const { delegate } = timeoutProvider;\n return (delegate?.clearTimeout || clearTimeout)(handle as any);\n },\n delegate: undefined,\n};\n","export function noop() { }\n//# sourceMappingURL=noop.js.map","/* tslint:disable:no-empty */\nexport function noop() { }\n","export var COMPLETE_NOTIFICATION = (function () { return createNotification('C', undefined, undefined); })();\nexport function errorNotification(error) {\n return createNotification('E', undefined, error);\n}\nexport function nextNotification(value) {\n return createNotification('N', value, undefined);\n}\nexport function createNotification(kind, value, error) {\n return {\n kind: kind,\n value: value,\n error: error,\n };\n}\n//# sourceMappingURL=NotificationFactories.js.map","import { CompleteNotification, NextNotification, ErrorNotification } from './types';\n\n/**\n * A completion object optimized for memory use and created to be the\n * same \"shape\" as other notifications in v8.\n * @internal\n */\nexport const COMPLETE_NOTIFICATION = (() => createNotification('C', undefined, undefined) as CompleteNotification)();\n\n/**\n * Internal use only. Creates an optimized error notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function errorNotification(error: any): ErrorNotification {\n return createNotification('E', undefined, error) as any;\n}\n\n/**\n * Internal use only. Creates an optimized next notification that is the same \"shape\"\n * as other notifications.\n * @internal\n */\nexport function nextNotification(value: T) {\n return createNotification('N', value, undefined) as NextNotification;\n}\n\n/**\n * Ensures that all notifications created internally have the same \"shape\" in v8.\n *\n * TODO: This is only exported to support a crazy legacy test in `groupBy`.\n * @internal\n */\nexport function createNotification(kind: 'N' | 'E' | 'C', value: any, error: any) {\n return {\n kind,\n value,\n error,\n };\n}\n","import { config } from '../config';\nvar context = null;\nexport function errorContext(cb) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n var isRoot = !context;\n if (isRoot) {\n context = { errorThrown: false, error: null };\n }\n cb();\n if (isRoot) {\n var _a = context, errorThrown = _a.errorThrown, error = _a.error;\n context = null;\n if (errorThrown) {\n throw error;\n }\n }\n }\n else {\n cb();\n }\n}\nexport function captureError(err) {\n if (config.useDeprecatedSynchronousErrorHandling && context) {\n context.errorThrown = true;\n context.error = err;\n }\n}\n//# sourceMappingURL=errorContext.js.map","import { config } from '../config';\n\nlet context: { errorThrown: boolean; error: any } | null = null;\n\n/**\n * Handles dealing with errors for super-gross mode. Creates a context, in which\n * any synchronously thrown errors will be passed to {@link captureError}. Which\n * will record the error such that it will be rethrown after the call back is complete.\n * TODO: Remove in v8\n * @param cb An immediately executed function.\n */\nexport function errorContext(cb: () => void) {\n if (config.useDeprecatedSynchronousErrorHandling) {\n const isRoot = !context;\n if (isRoot) {\n context = { errorThrown: false, error: null };\n }\n cb();\n if (isRoot) {\n const { errorThrown, error } = context!;\n context = null;\n if (errorThrown) {\n throw error;\n }\n }\n } else {\n // This is the general non-deprecated path for everyone that\n // isn't crazy enough to use super-gross mode (useDeprecatedSynchronousErrorHandling)\n cb();\n }\n}\n\n/**\n * Captures errors only in super-gross mode.\n * @param err the error to capture\n */\nexport function captureError(err: any) {\n if (config.useDeprecatedSynchronousErrorHandling && context) {\n context.errorThrown = true;\n context.error = err;\n }\n}\n","export var observable = (function () { return (typeof Symbol === 'function' && Symbol.observable) || '@@observable'; })();\n//# sourceMappingURL=observable.js.map","/**\n * Symbol.observable or a string \"@@observable\". Used for interop\n *\n * @deprecated We will no longer be exporting this symbol in upcoming versions of RxJS.\n * Instead polyfill and use Symbol.observable directly *or* use https://www.npmjs.com/package/symbol-observable\n */\nexport const observable: string | symbol = (() => (typeof Symbol === 'function' && Symbol.observable) || '@@observable')();\n","import { identity } from './identity';\nexport function pipe() {\n var fns = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n fns[_i] = arguments[_i];\n }\n return pipeFromArray(fns);\n}\nexport function pipeFromArray(fns) {\n if (fns.length === 0) {\n return identity;\n }\n if (fns.length === 1) {\n return fns[0];\n }\n return function piped(input) {\n return fns.reduce(function (prev, fn) { return fn(prev); }, input);\n };\n}\n//# sourceMappingURL=pipe.js.map","import { identity } from './identity';\nimport { UnaryFunction } from '../types';\n\nexport function pipe(): typeof identity;\nexport function pipe(fn1: UnaryFunction): UnaryFunction;\nexport function pipe(fn1: UnaryFunction, fn2: UnaryFunction): UnaryFunction;\nexport function pipe(fn1: UnaryFunction, fn2: UnaryFunction, fn3: UnaryFunction): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction,\n fn9: UnaryFunction\n): UnaryFunction;\nexport function pipe(\n fn1: UnaryFunction,\n fn2: UnaryFunction,\n fn3: UnaryFunction,\n fn4: UnaryFunction,\n fn5: UnaryFunction,\n fn6: UnaryFunction,\n fn7: UnaryFunction,\n fn8: UnaryFunction,\n fn9: UnaryFunction,\n ...fns: UnaryFunction[]\n): UnaryFunction;\n\n/**\n * pipe() can be called on one or more functions, each of which can take one argument (\"UnaryFunction\")\n * and uses it to return a value.\n * It returns a function that takes one argument, passes it to the first UnaryFunction, and then\n * passes the result to the next one, passes that result to the next one, and so on. \n */\nexport function pipe(...fns: Array>): UnaryFunction {\n return pipeFromArray(fns);\n}\n\n/** @internal */\nexport function pipeFromArray(fns: Array>): UnaryFunction {\n if (fns.length === 0) {\n return identity as UnaryFunction;\n }\n\n if (fns.length === 1) {\n return fns[0];\n }\n\n return function piped(input: T): R {\n return fns.reduce((prev: any, fn: UnaryFunction) => fn(prev), input as any);\n };\n}\n","export function identity(x) {\n return x;\n}\n//# sourceMappingURL=identity.js.map","/**\n * This function takes one parameter and just returns it. Simply put,\n * this is like `(x: T): T => x`.\n *\n * ## Examples\n *\n * This is useful in some cases when using things like `mergeMap`\n *\n * ```ts\n * import { interval, take, map, range, mergeMap, identity } from 'rxjs';\n *\n * const source$ = interval(1000).pipe(take(5));\n *\n * const result$ = source$.pipe(\n * map(i => range(i)),\n * mergeMap(identity) // same as mergeMap(x => x)\n * );\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * Or when you want to selectively apply an operator\n *\n * ```ts\n * import { interval, take, identity } from 'rxjs';\n *\n * const shouldLimit = () => Math.random() < 0.5;\n *\n * const source$ = interval(1000);\n *\n * const result$ = source$.pipe(shouldLimit() ? take(5) : identity);\n *\n * result$.subscribe({\n * next: console.log\n * });\n * ```\n *\n * @param x Any value that is returned by this function\n * @returns The value passed as the first parameter to this function\n */\nexport function identity(x: T): T {\n return x;\n}\n","import { observable as Symbol_observable } from '../symbol/observable';\nimport { isFunction } from './isFunction';\nexport function isInteropObservable(input) {\n return isFunction(input[Symbol_observable]);\n}\n//# sourceMappingURL=isInteropObservable.js.map","import { InteropObservable } from '../types';\nimport { observable as Symbol_observable } from '../symbol/observable';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being Observable (but not necessary an Rx Observable) */\nexport function isInteropObservable(input: any): input is InteropObservable {\n return isFunction(input[Symbol_observable]);\n}\n","import { isFunction } from './isFunction';\nexport function isAsyncIterable(obj) {\n return Symbol.asyncIterator && isFunction(obj === null || obj === void 0 ? void 0 : obj[Symbol.asyncIterator]);\n}\n//# sourceMappingURL=isAsyncIterable.js.map","import { isFunction } from './isFunction';\n\nexport function isAsyncIterable(obj: any): obj is AsyncIterable {\n return Symbol.asyncIterator && isFunction(obj?.[Symbol.asyncIterator]);\n}\n","export function createInvalidObservableTypeError(input) {\n return new TypeError(\"You provided \" + (input !== null && typeof input === 'object' ? 'an invalid object' : \"'\" + input + \"'\") + \" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.\");\n}\n//# sourceMappingURL=throwUnobservableError.js.map","/**\n * Creates the TypeError to throw if an invalid object is passed to `from` or `scheduled`.\n * @param input The object that was passed.\n */\nexport function createInvalidObservableTypeError(input: any) {\n // TODO: We should create error codes that can be looked up, so this can be less verbose.\n return new TypeError(\n `You provided ${\n input !== null && typeof input === 'object' ? 'an invalid object' : `'${input}'`\n } where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`\n );\n}\n","import { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from './isFunction';\nexport function isIterable(input) {\n return isFunction(input === null || input === void 0 ? void 0 : input[Symbol_iterator]);\n}\n//# sourceMappingURL=isIterable.js.map","import { iterator as Symbol_iterator } from '../symbol/iterator';\nimport { isFunction } from './isFunction';\n\n/** Identifies an input as being an Iterable */\nexport function isIterable(input: any): input is Iterable {\n return isFunction(input?.[Symbol_iterator]);\n}\n","export function getSymbolIterator() {\n if (typeof Symbol !== 'function' || !Symbol.iterator) {\n return '@@iterator';\n }\n return Symbol.iterator;\n}\nexport var iterator = getSymbolIterator();\n//# sourceMappingURL=iterator.js.map","export function getSymbolIterator(): symbol {\n if (typeof Symbol !== 'function' || !Symbol.iterator) {\n return '@@iterator' as any;\n }\n\n return Symbol.iterator;\n}\n\nexport const iterator = getSymbolIterator();\n","import { __asyncGenerator, __await, __generator } from \"tslib\";\nimport { isFunction } from './isFunction';\nexport function readableStreamLikeToAsyncGenerator(readableStream) {\n return __asyncGenerator(this, arguments, function readableStreamLikeToAsyncGenerator_1() {\n var reader, _a, value, done;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n reader = readableStream.getReader();\n _b.label = 1;\n case 1:\n _b.trys.push([1, , 9, 10]);\n _b.label = 2;\n case 2:\n if (!true) return [3, 8];\n return [4, __await(reader.read())];\n case 3:\n _a = _b.sent(), value = _a.value, done = _a.done;\n if (!done) return [3, 5];\n return [4, __await(void 0)];\n case 4: return [2, _b.sent()];\n case 5: return [4, __await(value)];\n case 6: return [4, _b.sent()];\n case 7:\n _b.sent();\n return [3, 2];\n case 8: return [3, 10];\n case 9:\n reader.releaseLock();\n return [7];\n case 10: return [2];\n }\n });\n });\n}\nexport function isReadableStreamLike(obj) {\n return isFunction(obj === null || obj === void 0 ? void 0 : obj.getReader);\n}\n//# sourceMappingURL=isReadableStreamLike.js.map","import { ReadableStreamLike } from '../types';\nimport { isFunction } from './isFunction';\n\nexport async function* readableStreamLikeToAsyncGenerator(readableStream: ReadableStreamLike): AsyncGenerator {\n const reader = readableStream.getReader();\n try {\n while (true) {\n const { value, done } = await reader.read();\n if (done) {\n return;\n }\n yield value!;\n }\n } finally {\n reader.releaseLock();\n }\n}\n\nexport function isReadableStreamLike(obj: any): obj is ReadableStreamLike {\n // We don't want to use instanceof checks because they would return\n // false for instances from another Realm, like an