@aws-amplify/auth 6.5.4-unstable.847fb51.0 → 6.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -119,7 +119,7 @@ class TokenOrchestrator {
119
119
  }
120
120
  handleErrors(err) {
121
121
  (0, assertServiceError_1.assertServiceError)(err);
122
- if (err.message !== 'Network error') {
122
+ if (err.name !== utils_1.AmplifyErrorCode.NetworkError) {
123
123
  // TODO(v6): Check errors on client
124
124
  this.clearTokens();
125
125
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TokenOrchestrator.js","sources":["../../../../../src/providers/cognito/tokenProvider/TokenOrchestrator.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TokenOrchestrator = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst assertServiceError_1 = require(\"../../../errors/utils/assertServiceError\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst oAuthStore_1 = require(\"../utils/oauth/oAuthStore\");\nconst inflightPromise_1 = require(\"../utils/oauth/inflightPromise\");\nclass TokenOrchestrator {\n constructor() {\n this.waitForInflightOAuth = (0, utils_1.isBrowser)()\n ? async () => {\n if (!(await oAuthStore_1.oAuthStore.loadOAuthInFlight())) {\n return;\n }\n if (this.inflightPromise) {\n return this.inflightPromise;\n }\n // when there is valid oauth config and there is an inflight oauth flow, try\n // to block async calls that require fetching tokens before the oauth flow completes\n // e.g. getCurrentUser, fetchAuthSession etc.\n this.inflightPromise = new Promise((resolve, _reject) => {\n (0, inflightPromise_1.addInflightPromise)(resolve);\n });\n return this.inflightPromise;\n }\n : async () => {\n // no-op for non-browser environments\n };\n }\n setAuthConfig(authConfig) {\n oAuthStore_1.oAuthStore.setAuthConfig(authConfig.Cognito);\n this.authConfig = authConfig;\n }\n setTokenRefresher(tokenRefresher) {\n this.tokenRefresher = tokenRefresher;\n }\n setAuthTokenStore(tokenStore) {\n this.tokenStore = tokenStore;\n }\n getTokenStore() {\n if (!this.tokenStore) {\n throw new AuthError_1.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_1.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 (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n }\n catch (_err) {\n // Token provider not configured\n return null;\n }\n await this.waitForInflightOAuth();\n this.inflightPromise = undefined;\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 (0, utils_1.isTokenExpired)({\n expiresAt: (tokens.idToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n const accessTokenExpired = (0, utils_1.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 { signInDetails } = tokens;\n const newTokens = await this.getTokenRefresher()({\n tokens,\n authConfig: this.authConfig,\n username,\n });\n newTokens.signInDetails = signInDetails;\n await this.setTokens({ tokens: newTokens });\n core_1.Hub.dispatch('auth', { event: 'tokenRefresh' }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n return newTokens;\n }\n catch (err) {\n return this.handleErrors(err);\n }\n }\n handleErrors(err) {\n (0, assertServiceError_1.assertServiceError)(err);\n if (err.message !== 'Network error') {\n // TODO(v6): Check errors on client\n this.clearTokens();\n }\n core_1.Hub.dispatch('auth', {\n event: 'tokenRefresh_failure',\n data: { error: err },\n }, 'Auth', utils_1.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 setOAuthMetadata(metadata) {\n return this.getTokenStore().setOAuthMetadata(metadata);\n }\n getOAuthMetadata() {\n return this.getTokenStore().getOAuthMetadata();\n }\n}\nexports.TokenOrchestrator = TokenOrchestrator;\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TokenOrchestrator.js","sources":["../../../../../src/providers/cognito/tokenProvider/TokenOrchestrator.ts"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TokenOrchestrator = void 0;\n// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nconst core_1 = require(\"@aws-amplify/core\");\nconst utils_1 = require(\"@aws-amplify/core/internals/utils\");\nconst assertServiceError_1 = require(\"../../../errors/utils/assertServiceError\");\nconst AuthError_1 = require(\"../../../errors/AuthError\");\nconst oAuthStore_1 = require(\"../utils/oauth/oAuthStore\");\nconst inflightPromise_1 = require(\"../utils/oauth/inflightPromise\");\nclass TokenOrchestrator {\n constructor() {\n this.waitForInflightOAuth = (0, utils_1.isBrowser)()\n ? async () => {\n if (!(await oAuthStore_1.oAuthStore.loadOAuthInFlight())) {\n return;\n }\n if (this.inflightPromise) {\n return this.inflightPromise;\n }\n // when there is valid oauth config and there is an inflight oauth flow, try\n // to block async calls that require fetching tokens before the oauth flow completes\n // e.g. getCurrentUser, fetchAuthSession etc.\n this.inflightPromise = new Promise((resolve, _reject) => {\n (0, inflightPromise_1.addInflightPromise)(resolve);\n });\n return this.inflightPromise;\n }\n : async () => {\n // no-op for non-browser environments\n };\n }\n setAuthConfig(authConfig) {\n oAuthStore_1.oAuthStore.setAuthConfig(authConfig.Cognito);\n this.authConfig = authConfig;\n }\n setTokenRefresher(tokenRefresher) {\n this.tokenRefresher = tokenRefresher;\n }\n setAuthTokenStore(tokenStore) {\n this.tokenStore = tokenStore;\n }\n getTokenStore() {\n if (!this.tokenStore) {\n throw new AuthError_1.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_1.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 (0, utils_1.assertTokenProviderConfig)(this.authConfig?.Cognito);\n }\n catch (_err) {\n // Token provider not configured\n return null;\n }\n await this.waitForInflightOAuth();\n this.inflightPromise = undefined;\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 (0, utils_1.isTokenExpired)({\n expiresAt: (tokens.idToken?.payload?.exp ?? 0) * 1000,\n clockDrift: tokens.clockDrift ?? 0,\n });\n const accessTokenExpired = (0, utils_1.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 { signInDetails } = tokens;\n const newTokens = await this.getTokenRefresher()({\n tokens,\n authConfig: this.authConfig,\n username,\n });\n newTokens.signInDetails = signInDetails;\n await this.setTokens({ tokens: newTokens });\n core_1.Hub.dispatch('auth', { event: 'tokenRefresh' }, 'Auth', utils_1.AMPLIFY_SYMBOL);\n return newTokens;\n }\n catch (err) {\n return this.handleErrors(err);\n }\n }\n handleErrors(err) {\n (0, assertServiceError_1.assertServiceError)(err);\n if (err.name !== utils_1.AmplifyErrorCode.NetworkError) {\n // TODO(v6): Check errors on client\n this.clearTokens();\n }\n core_1.Hub.dispatch('auth', {\n event: 'tokenRefresh_failure',\n data: { error: err },\n }, 'Auth', utils_1.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 setOAuthMetadata(metadata) {\n return this.getTokenStore().setOAuthMetadata(metadata);\n }\n getOAuthMetadata() {\n return this.getTokenStore().getOAuthMetadata();\n }\n}\nexports.TokenOrchestrator = TokenOrchestrator;\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Hub } from '@aws-amplify/core';
2
- import { isBrowser, assertTokenProviderConfig, isTokenExpired, AMPLIFY_SYMBOL } from '@aws-amplify/core/internals/utils';
2
+ import { isBrowser, assertTokenProviderConfig, isTokenExpired, AMPLIFY_SYMBOL, AmplifyErrorCode } from '@aws-amplify/core/internals/utils';
3
3
  import { assertServiceError } from '../../../errors/utils/assertServiceError.mjs';
4
4
  import { AuthError } from '../../../errors/AuthError.mjs';
5
5
  import { oAuthStore } from '../utils/oauth/oAuthStore.mjs';
@@ -116,7 +116,7 @@ class TokenOrchestrator {
116
116
  }
117
117
  handleErrors(err) {
118
118
  assertServiceError(err);
119
- if (err.message !== 'Network error') {
119
+ if (err.name !== AmplifyErrorCode.NetworkError) {
120
120
  // TODO(v6): Check errors on client
121
121
  this.clearTokens();
122
122
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TokenOrchestrator.mjs","sources":["../../../../../src/providers/cognito/tokenProvider/TokenOrchestrator.ts"],"sourcesContent":["// 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, isBrowser, isTokenExpired, } from '@aws-amplify/core/internals/utils';\nimport { assertServiceError } from '../../../errors/utils/assertServiceError';\nimport { AuthError } from '../../../errors/AuthError';\nimport { oAuthStore } from '../utils/oauth/oAuthStore';\nimport { addInflightPromise } from '../utils/oauth/inflightPromise';\nexport class TokenOrchestrator {\n constructor() {\n this.waitForInflightOAuth = isBrowser()\n ? async () => {\n if (!(await oAuthStore.loadOAuthInFlight())) {\n return;\n }\n if (this.inflightPromise) {\n return this.inflightPromise;\n }\n // when there is valid oauth config and there is an inflight oauth flow, try\n // to block async calls that require fetching tokens before the oauth flow completes\n // e.g. getCurrentUser, fetchAuthSession etc.\n this.inflightPromise = new Promise((resolve, _reject) => {\n addInflightPromise(resolve);\n });\n return this.inflightPromise;\n }\n : async () => {\n // no-op for non-browser environments\n };\n }\n setAuthConfig(authConfig) {\n oAuthStore.setAuthConfig(authConfig.Cognito);\n this.authConfig = authConfig;\n }\n setTokenRefresher(tokenRefresher) {\n this.tokenRefresher = tokenRefresher;\n }\n setAuthTokenStore(tokenStore) {\n this.tokenStore = tokenStore;\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 this.inflightPromise = undefined;\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 { signInDetails } = tokens;\n const newTokens = await this.getTokenRefresher()({\n tokens,\n authConfig: this.authConfig,\n username,\n });\n newTokens.signInDetails = signInDetails;\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 setOAuthMetadata(metadata) {\n return this.getTokenStore().setOAuthMetadata(metadata);\n }\n getOAuthMetadata() {\n return this.getTokenStore().getOAuthMetadata();\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TokenOrchestrator.mjs","sources":["../../../../../src/providers/cognito/tokenProvider/TokenOrchestrator.ts"],"sourcesContent":["// 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, AmplifyErrorCode, assertTokenProviderConfig, isBrowser, isTokenExpired, } from '@aws-amplify/core/internals/utils';\nimport { assertServiceError } from '../../../errors/utils/assertServiceError';\nimport { AuthError } from '../../../errors/AuthError';\nimport { oAuthStore } from '../utils/oauth/oAuthStore';\nimport { addInflightPromise } from '../utils/oauth/inflightPromise';\nexport class TokenOrchestrator {\n constructor() {\n this.waitForInflightOAuth = isBrowser()\n ? async () => {\n if (!(await oAuthStore.loadOAuthInFlight())) {\n return;\n }\n if (this.inflightPromise) {\n return this.inflightPromise;\n }\n // when there is valid oauth config and there is an inflight oauth flow, try\n // to block async calls that require fetching tokens before the oauth flow completes\n // e.g. getCurrentUser, fetchAuthSession etc.\n this.inflightPromise = new Promise((resolve, _reject) => {\n addInflightPromise(resolve);\n });\n return this.inflightPromise;\n }\n : async () => {\n // no-op for non-browser environments\n };\n }\n setAuthConfig(authConfig) {\n oAuthStore.setAuthConfig(authConfig.Cognito);\n this.authConfig = authConfig;\n }\n setTokenRefresher(tokenRefresher) {\n this.tokenRefresher = tokenRefresher;\n }\n setAuthTokenStore(tokenStore) {\n this.tokenStore = tokenStore;\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 this.inflightPromise = undefined;\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 { signInDetails } = tokens;\n const newTokens = await this.getTokenRefresher()({\n tokens,\n authConfig: this.authConfig,\n username,\n });\n newTokens.signInDetails = signInDetails;\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.name !== AmplifyErrorCode.NetworkError) {\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 setOAuthMetadata(metadata) {\n return this.getTokenStore().setOAuthMetadata(metadata);\n }\n getOAuthMetadata() {\n return this.getTokenStore().getOAuthMetadata();\n }\n}\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,106 +1,106 @@
1
1
  {
2
- "name": "@aws-amplify/auth",
3
- "version": "6.5.4-unstable.847fb51.0+847fb51",
4
- "description": "Auth category of aws-amplify",
5
- "main": "./dist/cjs/index.js",
6
- "module": "./dist/esm/index.mjs",
7
- "typings": "./dist/esm/index.d.ts",
8
- "react-native": "./src/index.ts",
9
- "sideEffects": [
10
- "./dist/cjs/providers/cognito/apis/signInWithRedirect.js",
11
- "./dist/esm/providers/cognito/apis/signInWithRedirect.mjs",
12
- "./dist/cjs/providers/cognito/utils/oauth/enableOAuthListener.js",
13
- "./dist/esm/providers/cognito/utils/oauth/enableOAuthListener.mjs"
14
- ],
15
- "publishConfig": {
16
- "access": "public"
17
- },
18
- "scripts": {
19
- "test": "yarn lint --fix && jest -w 1 --coverage --logHeapUsage",
20
- "build-with-test": "npm test && npm run build",
21
- "build:umd": "webpack && webpack --config ./webpack.config.dev.js",
22
- "build:esm-cjs": "rollup --forceExit -c rollup.config.mjs",
23
- "build:watch": "npm run build:esm-cjs -- --watch",
24
- "build": "npm run clean && npm run build:esm-cjs && npm run build:umd",
25
- "clean": "npm run clean:size && rimraf lib-esm lib dist",
26
- "clean:size": "rimraf dual-publish-tmp tmp*",
27
- "format": "echo \"Not implemented\"",
28
- "lint": "eslint '**/*.{ts,tsx}' && npm run ts-coverage",
29
- "lint:fix": "eslint '**/*.{ts,tsx}' --fix",
30
- "ts-coverage": "typescript-coverage-report -p ./tsconfig.build.json -t 91.18"
31
- },
32
- "typesVersions": {
33
- ">=4.2": {
34
- "cognito": [
35
- "./dist/esm/providers/cognito/index.d.ts"
36
- ],
37
- "cognito/server": [
38
- "./dist/esm/providers/cognito/apis/server/index.d.ts"
39
- ],
40
- "server": [
41
- "./dist/esm/server.d.ts"
42
- ]
43
- }
44
- },
45
- "exports": {
46
- ".": {
47
- "types": "./dist/esm/index.d.ts",
48
- "import": "./dist/esm/index.mjs",
49
- "require": "./dist/cjs/index.js",
50
- "react-native": "./src/index.ts"
51
- },
52
- "./cognito": {
53
- "types": "./dist/esm/providers/cognito/index.d.ts",
54
- "import": "./dist/esm/providers/cognito/index.mjs",
55
- "require": "./dist/cjs/providers/cognito/index.js",
56
- "react-native": "./src/providers/cognito/index.ts"
57
- },
58
- "./cognito/server": {
59
- "types": "./dist/esm/providers/cognito/apis/server/index.d.ts",
60
- "import": "./dist/esm/providers/cognito/apis/server/index.mjs",
61
- "require": "./dist/cjs/providers/cognito/apis/server/index.js"
62
- },
63
- "./server": {
64
- "types": "./dist/esm/server.d.ts",
65
- "import": "./dist/esm/server.mjs",
66
- "require": "./dist/cjs/server.js"
67
- },
68
- "./enable-oauth-listener": {
69
- "types": "./dist/esm/providers/cognito/utils/oauth/enableOAuthListener.d.ts",
70
- "import": "./dist/esm/providers/cognito/utils/oauth/enableOAuthListener.mjs",
71
- "require": "./dist/cjs/providers/cognito/utils/oauth/enableOAuthListener.js"
72
- },
73
- "./package.json": "./package.json"
74
- },
75
- "repository": {
76
- "type": "git",
77
- "url": "https://github.com/aws-amplify/amplify-js.git"
78
- },
79
- "author": "Amazon Web Services",
80
- "license": "Apache-2.0",
81
- "bugs": {
82
- "url": "https://github.com/aws/aws-amplify/issues"
83
- },
84
- "homepage": "https://aws-amplify.github.io/",
85
- "files": [
86
- "dist/cjs",
87
- "dist/esm",
88
- "src",
89
- "cognito",
90
- "server",
91
- "enable-oauth-listener"
92
- ],
93
- "dependencies": {
94
- "tslib": "^2.5.0"
95
- },
96
- "peerDependencies": {
97
- "@aws-amplify/core": "6.4.7-unstable.847fb51.0+847fb51"
98
- },
99
- "devDependencies": {
100
- "@aws-amplify/core": "6.4.7-unstable.847fb51.0+847fb51",
101
- "@aws-amplify/react-native": "1.1.7-unstable.847fb51.0+847fb51",
102
- "@jest/test-sequencer": "^29.7.0",
103
- "typescript": "5.0.2"
104
- },
105
- "gitHead": "847fb51acee1ee8585503625a6f73d67265217d0"
2
+ "name": "@aws-amplify/auth",
3
+ "version": "6.5.4",
4
+ "description": "Auth category of aws-amplify",
5
+ "main": "./dist/cjs/index.js",
6
+ "module": "./dist/esm/index.mjs",
7
+ "typings": "./dist/esm/index.d.ts",
8
+ "react-native": "./src/index.ts",
9
+ "sideEffects": [
10
+ "./dist/cjs/providers/cognito/apis/signInWithRedirect.js",
11
+ "./dist/esm/providers/cognito/apis/signInWithRedirect.mjs",
12
+ "./dist/cjs/providers/cognito/utils/oauth/enableOAuthListener.js",
13
+ "./dist/esm/providers/cognito/utils/oauth/enableOAuthListener.mjs"
14
+ ],
15
+ "publishConfig": {
16
+ "access": "public"
17
+ },
18
+ "scripts": {
19
+ "test": "yarn lint --fix && jest -w 1 --coverage --logHeapUsage",
20
+ "build-with-test": "npm test && npm run build",
21
+ "build:umd": "webpack && webpack --config ./webpack.config.dev.js",
22
+ "build:esm-cjs": "rollup --forceExit -c rollup.config.mjs",
23
+ "build:watch": "npm run build:esm-cjs -- --watch",
24
+ "build": "npm run clean && npm run build:esm-cjs && npm run build:umd",
25
+ "clean": "npm run clean:size && rimraf lib-esm lib dist",
26
+ "clean:size": "rimraf dual-publish-tmp tmp*",
27
+ "format": "echo \"Not implemented\"",
28
+ "lint": "eslint '**/*.{ts,tsx}' && npm run ts-coverage",
29
+ "lint:fix": "eslint '**/*.{ts,tsx}' --fix",
30
+ "ts-coverage": "typescript-coverage-report -p ./tsconfig.build.json -t 91.18"
31
+ },
32
+ "typesVersions": {
33
+ ">=4.2": {
34
+ "cognito": [
35
+ "./dist/esm/providers/cognito/index.d.ts"
36
+ ],
37
+ "cognito/server": [
38
+ "./dist/esm/providers/cognito/apis/server/index.d.ts"
39
+ ],
40
+ "server": [
41
+ "./dist/esm/server.d.ts"
42
+ ]
43
+ }
44
+ },
45
+ "exports": {
46
+ ".": {
47
+ "types": "./dist/esm/index.d.ts",
48
+ "import": "./dist/esm/index.mjs",
49
+ "require": "./dist/cjs/index.js",
50
+ "react-native": "./src/index.ts"
51
+ },
52
+ "./cognito": {
53
+ "types": "./dist/esm/providers/cognito/index.d.ts",
54
+ "import": "./dist/esm/providers/cognito/index.mjs",
55
+ "require": "./dist/cjs/providers/cognito/index.js",
56
+ "react-native": "./src/providers/cognito/index.ts"
57
+ },
58
+ "./cognito/server": {
59
+ "types": "./dist/esm/providers/cognito/apis/server/index.d.ts",
60
+ "import": "./dist/esm/providers/cognito/apis/server/index.mjs",
61
+ "require": "./dist/cjs/providers/cognito/apis/server/index.js"
62
+ },
63
+ "./server": {
64
+ "types": "./dist/esm/server.d.ts",
65
+ "import": "./dist/esm/server.mjs",
66
+ "require": "./dist/cjs/server.js"
67
+ },
68
+ "./enable-oauth-listener": {
69
+ "types": "./dist/esm/providers/cognito/utils/oauth/enableOAuthListener.d.ts",
70
+ "import": "./dist/esm/providers/cognito/utils/oauth/enableOAuthListener.mjs",
71
+ "require": "./dist/cjs/providers/cognito/utils/oauth/enableOAuthListener.js"
72
+ },
73
+ "./package.json": "./package.json"
74
+ },
75
+ "repository": {
76
+ "type": "git",
77
+ "url": "https://github.com/aws-amplify/amplify-js.git"
78
+ },
79
+ "author": "Amazon Web Services",
80
+ "license": "Apache-2.0",
81
+ "bugs": {
82
+ "url": "https://github.com/aws/aws-amplify/issues"
83
+ },
84
+ "homepage": "https://aws-amplify.github.io/",
85
+ "files": [
86
+ "dist/cjs",
87
+ "dist/esm",
88
+ "src",
89
+ "cognito",
90
+ "server",
91
+ "enable-oauth-listener"
92
+ ],
93
+ "dependencies": {
94
+ "tslib": "^2.5.0"
95
+ },
96
+ "peerDependencies": {
97
+ "@aws-amplify/core": "^6.1.0"
98
+ },
99
+ "devDependencies": {
100
+ "@aws-amplify/core": "6.4.7",
101
+ "@aws-amplify/react-native": "1.1.6",
102
+ "@jest/test-sequencer": "^29.7.0",
103
+ "typescript": "5.0.2"
104
+ },
105
+ "gitHead": "aba109bc3502111346b0beed1b23883d7b142502"
106
106
  }
@@ -9,6 +9,7 @@ import {
9
9
  } from '@aws-amplify/core';
10
10
  import {
11
11
  AMPLIFY_SYMBOL,
12
+ AmplifyErrorCode,
12
13
  assertTokenProviderConfig,
13
14
  isBrowser,
14
15
  isTokenExpired,
@@ -169,7 +170,7 @@ export class TokenOrchestrator implements AuthTokenOrchestrator {
169
170
 
170
171
  private handleErrors(err: unknown) {
171
172
  assertServiceError(err);
172
- if (err.message !== 'Network error') {
173
+ if (err.name !== AmplifyErrorCode.NetworkError) {
173
174
  // TODO(v6): Check errors on client
174
175
  this.clearTokens();
175
176
  }