@aws-amplify/core 6.0.1-console-preview.deaebd5.0 → 6.0.1-console-preview.b5a42af.0
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.
- package/lib/AwsClients/CognitoIdentity/getCredentialsForIdentity.d.ts +2 -1
- package/lib/AwsClients/CognitoIdentity/getId.d.ts +2 -1
- package/lib/AwsClients/Pinpoint/getInAppMessages.d.ts +3 -2
- package/lib/AwsClients/Pinpoint/putEvents.d.ts +3 -2
- package/lib/AwsClients/Pinpoint/updateEndpoint.d.ts +3 -2
- package/lib/Cache/AsyncStorageCache.d.ts +1 -1
- package/lib/Cache/AsyncStorageCache.js +20 -22
- package/lib/Platform/version.d.ts +1 -1
- package/lib/Platform/version.js +1 -1
- package/lib/Reachability/Reachability.native.d.ts +2 -2
- package/lib/clients/handlers/fetch.js +2 -1
- package/lib/clients/middleware/signing/signer/signatureV4/index.native.d.ts +0 -1
- package/lib/clients/middleware/signing/signer/signatureV4/index.native.js +2 -1
- package/lib/clients/types/http.d.ts +16 -0
- package/lib/libraryUtils.d.ts +1 -1
- package/lib/parseAWSExports.js +24 -8
- package/lib/providers/pinpoint/index.d.ts +1 -0
- package/lib/providers/pinpoint/index.js +3 -0
- package/lib/singleton/API/types.d.ts +66 -29
- package/lib/singleton/Auth/utils/index.js +1 -1
- package/lib/singleton/Notifications/InAppMessaging/types.d.ts +2 -0
- package/lib/singleton/Notifications/InAppMessaging/types.js +4 -0
- package/lib/singleton/Notifications/types.d.ts +4 -0
- package/lib/singleton/Notifications/types.js +4 -0
- package/lib/singleton/types.d.ts +2 -0
- package/lib/storage/DefaultStorage.native.d.ts +2 -2
- package/lib/storage/DefaultStorage.native.js +3 -24
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/utils/globalHelpers/index.native.d.ts +0 -1
- package/lib/utils/globalHelpers/index.native.js +2 -1
- package/lib-esm/AwsClients/CognitoIdentity/getCredentialsForIdentity.d.ts +2 -1
- package/lib-esm/AwsClients/CognitoIdentity/getId.d.ts +2 -1
- package/lib-esm/AwsClients/Pinpoint/getInAppMessages.d.ts +3 -2
- package/lib-esm/AwsClients/Pinpoint/putEvents.d.ts +3 -2
- package/lib-esm/AwsClients/Pinpoint/updateEndpoint.d.ts +3 -2
- package/lib-esm/Cache/AsyncStorageCache.d.ts +1 -1
- package/lib-esm/Cache/AsyncStorageCache.js +2 -1
- package/lib-esm/Platform/version.d.ts +1 -1
- package/lib-esm/Platform/version.js +1 -1
- package/lib-esm/Reachability/Reachability.native.d.ts +2 -2
- package/lib-esm/clients/handlers/fetch.js +2 -1
- package/lib-esm/clients/middleware/signing/signer/signatureV4/index.native.d.ts +0 -1
- package/lib-esm/clients/middleware/signing/signer/signatureV4/index.native.js +2 -1
- package/lib-esm/clients/types/http.d.ts +16 -0
- package/lib-esm/libraryUtils.d.ts +1 -1
- package/lib-esm/parseAWSExports.js +24 -8
- package/lib-esm/providers/pinpoint/index.d.ts +1 -0
- package/lib-esm/providers/pinpoint/index.js +1 -0
- package/lib-esm/singleton/API/types.d.ts +66 -29
- package/lib-esm/singleton/Auth/utils/index.js +1 -1
- package/lib-esm/singleton/Notifications/InAppMessaging/types.d.ts +2 -0
- package/lib-esm/singleton/Notifications/InAppMessaging/types.js +3 -0
- package/lib-esm/singleton/Notifications/types.d.ts +4 -0
- package/lib-esm/singleton/Notifications/types.js +3 -0
- package/lib-esm/singleton/types.d.ts +2 -0
- package/lib-esm/storage/DefaultStorage.native.d.ts +2 -2
- package/lib-esm/storage/DefaultStorage.native.js +3 -24
- package/lib-esm/tsconfig.tsbuildinfo +1 -1
- package/lib-esm/utils/globalHelpers/index.native.d.ts +0 -1
- package/lib-esm/utils/globalHelpers/index.native.js +2 -1
- package/package.json +3 -9
- package/src/Cache/AsyncStorageCache.ts +2 -1
- package/src/Platform/version.ts +1 -1
- package/src/Reachability/Reachability.native.ts +4 -2
- package/src/clients/handlers/fetch.ts +5 -1
- package/src/clients/middleware/signing/signer/signatureV4/index.native.ts +3 -1
- package/src/clients/types/http.ts +18 -0
- package/src/libraryUtils.ts +1 -1
- package/src/parseAWSExports.ts +38 -7
- package/src/providers/pinpoint/index.ts +1 -0
- package/src/singleton/API/types.ts +77 -26
- package/src/singleton/Auth/utils/index.ts +1 -1
- package/src/singleton/Notifications/InAppMessaging/types.ts +6 -0
- package/src/singleton/Notifications/types.ts +8 -0
- package/src/singleton/types.ts +2 -1
- package/src/storage/DefaultStorage.native.ts +6 -26
- package/src/utils/globalHelpers/index.native.ts +3 -1
- package/polyfills/URL/index.ts +0 -14
- package/polyfills/URL/tsconfig.json +0 -10
- package/polyfills/URL/webpack.config.js +0 -43
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
// SPDX-License-Identifier: Apache-2.0
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.getAtob = exports.getBtoa = exports.getCrypto = void 0;
|
|
6
|
-
require("react-native
|
|
6
|
+
var react_native_1 = require("@aws-amplify/react-native");
|
|
7
7
|
var base_64_1 = require("base-64");
|
|
8
8
|
var errors_1 = require("../../errors");
|
|
9
|
+
(0, react_native_1.loadGetRandomValues)();
|
|
9
10
|
var getCrypto = function () {
|
|
10
11
|
if (typeof crypto !== 'undefined' &&
|
|
11
12
|
typeof crypto.getRandomValues === 'function') {
|
|
@@ -14,8 +14,9 @@ export declare const getCredentialsForIdentity: (config: {
|
|
|
14
14
|
userAgentValue?: string | undefined;
|
|
15
15
|
cache?: "default" | "force-cache" | "no-cache" | "no-store" | "only-if-cached" | "reload" | undefined;
|
|
16
16
|
} & {
|
|
17
|
-
region: string;
|
|
18
17
|
abortSignal?: AbortSignal | undefined;
|
|
18
|
+
withCrossDomainCredentials?: boolean | undefined;
|
|
19
19
|
maxAttempts?: number | undefined;
|
|
20
20
|
userAgentHeader?: string | undefined;
|
|
21
|
+
region: string;
|
|
21
22
|
}, input: GetCredentialsForIdentityInput) => Promise<GetCredentialsForIdentityOutput>;
|
|
@@ -14,8 +14,9 @@ export declare const getId: (config: {
|
|
|
14
14
|
userAgentValue?: string | undefined;
|
|
15
15
|
cache?: "default" | "force-cache" | "no-cache" | "no-store" | "only-if-cached" | "reload" | undefined;
|
|
16
16
|
} & {
|
|
17
|
-
region: string;
|
|
18
17
|
abortSignal?: AbortSignal | undefined;
|
|
18
|
+
withCrossDomainCredentials?: boolean | undefined;
|
|
19
19
|
maxAttempts?: number | undefined;
|
|
20
20
|
userAgentHeader?: string | undefined;
|
|
21
|
+
region: string;
|
|
21
22
|
}, input: GetIdInput) => Promise<GetIdOutput>;
|
|
@@ -13,11 +13,12 @@ export declare const getInAppMessages: (config: {
|
|
|
13
13
|
computeDelay?: ((attempt: number) => number) | undefined;
|
|
14
14
|
userAgentValue?: string | undefined;
|
|
15
15
|
} & {
|
|
16
|
-
credentials: import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity | (() => Promise<import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity>);
|
|
17
|
-
region: string;
|
|
18
16
|
abortSignal?: AbortSignal | undefined;
|
|
19
17
|
cache?: RequestCache | undefined;
|
|
18
|
+
withCrossDomainCredentials?: boolean | undefined;
|
|
20
19
|
maxAttempts?: number | undefined;
|
|
21
20
|
userAgentHeader?: string | undefined;
|
|
22
21
|
uriEscapePath?: boolean | undefined;
|
|
22
|
+
credentials: import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity | (() => Promise<import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity>);
|
|
23
|
+
region: string;
|
|
23
24
|
}, input: GetInAppMessagesInput) => Promise<GetInAppMessagesOutput>;
|
|
@@ -13,11 +13,12 @@ export declare const putEvents: (config: {
|
|
|
13
13
|
computeDelay?: ((attempt: number) => number) | undefined;
|
|
14
14
|
userAgentValue?: string | undefined;
|
|
15
15
|
} & {
|
|
16
|
-
credentials: import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity | (() => Promise<import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity>);
|
|
17
|
-
region: string;
|
|
18
16
|
abortSignal?: AbortSignal | undefined;
|
|
19
17
|
cache?: RequestCache | undefined;
|
|
18
|
+
withCrossDomainCredentials?: boolean | undefined;
|
|
20
19
|
maxAttempts?: number | undefined;
|
|
21
20
|
userAgentHeader?: string | undefined;
|
|
22
21
|
uriEscapePath?: boolean | undefined;
|
|
22
|
+
credentials: import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity | (() => Promise<import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity>);
|
|
23
|
+
region: string;
|
|
23
24
|
}, input: PutEventsInput) => Promise<PutEventsOutput>;
|
|
@@ -13,11 +13,12 @@ export declare const updateEndpoint: (config: {
|
|
|
13
13
|
computeDelay?: ((attempt: number) => number) | undefined;
|
|
14
14
|
userAgentValue?: string | undefined;
|
|
15
15
|
} & {
|
|
16
|
-
credentials: import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity | (() => Promise<import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity>);
|
|
17
|
-
region: string;
|
|
18
16
|
abortSignal?: AbortSignal | undefined;
|
|
19
17
|
cache?: RequestCache | undefined;
|
|
18
|
+
withCrossDomainCredentials?: boolean | undefined;
|
|
20
19
|
maxAttempts?: number | undefined;
|
|
21
20
|
userAgentHeader?: string | undefined;
|
|
22
21
|
uriEscapePath?: boolean | undefined;
|
|
22
|
+
credentials: import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity | (() => Promise<import("@smithy/types/dist-types/identity/awsCredentialIdentity").AwsCredentialIdentity>);
|
|
23
|
+
region: string;
|
|
23
24
|
}, input: UpdateEndpointInput) => Promise<UpdateEndpointOutput>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import AsyncStorage from '@react-native-async-storage/async-storage';
|
|
2
1
|
import { StorageCache } from './StorageCache';
|
|
3
2
|
import { CacheConfig, CacheItem, CacheItemOptions, ICache } from './types';
|
|
3
|
+
declare const AsyncStorage: import("@react-native-async-storage/async-storage").AsyncStorageStatic;
|
|
4
4
|
export declare class AsyncStorageCache extends StorageCache implements ICache {
|
|
5
5
|
/**
|
|
6
6
|
* initialize the cache
|
|
@@ -51,13 +51,14 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
51
51
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
52
52
|
}
|
|
53
53
|
};
|
|
54
|
-
import
|
|
54
|
+
import { loadAsyncStorage } from '@aws-amplify/react-native';
|
|
55
55
|
import { ConsoleLogger as Logger } from '../Logger';
|
|
56
56
|
import { StorageCache } from './StorageCache';
|
|
57
57
|
import { defaultConfig, getCurrTime } from './Utils';
|
|
58
58
|
import { getCurrSizeKey } from './Utils/CacheUtils';
|
|
59
59
|
import { assert, CacheErrorCode } from './Utils/errorHelpers';
|
|
60
60
|
var logger = new Logger('AsyncStorageCache');
|
|
61
|
+
var AsyncStorage = loadAsyncStorage();
|
|
61
62
|
/*
|
|
62
63
|
* Customized cache which based on the AsyncStorage with LRU implemented
|
|
63
64
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "6.0.1-console-preview.
|
|
1
|
+
export declare const version = "6.0.1-console-preview.b5a42af.0+b5a42af";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// generated by genversion
|
|
2
|
-
export var version = '6.0.1-console-preview.
|
|
2
|
+
export var version = '6.0.1-console-preview.b5a42af.0+b5a42af';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import
|
|
2
|
+
import { loadNetInfo } from '@aws-amplify/react-native';
|
|
3
3
|
import { NetworkStatus } from './types';
|
|
4
4
|
export declare class Reachability {
|
|
5
|
-
networkMonitor(netInfo?: typeof
|
|
5
|
+
networkMonitor(netInfo?: ReturnType<typeof loadNetInfo>): Observable<NetworkStatus>;
|
|
6
6
|
}
|
|
@@ -54,7 +54,7 @@ var shouldSendBody = function (method) {
|
|
|
54
54
|
// TODO[AllanZhengYP]: we need to provide isCanceledError utility
|
|
55
55
|
export var fetchTransferHandler = function (_a, _b) {
|
|
56
56
|
var url = _a.url, method = _a.method, headers = _a.headers, body = _a.body;
|
|
57
|
-
var abortSignal = _b.abortSignal, cache = _b.cache;
|
|
57
|
+
var abortSignal = _b.abortSignal, cache = _b.cache, withCrossDomainCredentials = _b.withCrossDomainCredentials;
|
|
58
58
|
return __awaiter(void 0, void 0, void 0, function () {
|
|
59
59
|
var resp, e_1, responseHeaders, httpResponse, bodyWithMixin;
|
|
60
60
|
var _c, _d;
|
|
@@ -68,6 +68,7 @@ export var fetchTransferHandler = function (_a, _b) {
|
|
|
68
68
|
body: shouldSendBody(method) ? body : undefined,
|
|
69
69
|
signal: abortSignal,
|
|
70
70
|
cache: cache,
|
|
71
|
+
credentials: withCrossDomainCredentials ? 'include' : 'same-origin',
|
|
71
72
|
})];
|
|
72
73
|
case 1:
|
|
73
74
|
resp = _e.sent();
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
-
import '@aws-amplify/
|
|
3
|
+
import { loadUrlPolyfill } from '@aws-amplify/react-native';
|
|
4
|
+
loadUrlPolyfill();
|
|
4
5
|
// TODO: V6 replace Signer
|
|
5
6
|
export { signRequest } from './signRequest';
|
|
6
7
|
export { presignUrl } from './presignUrl';
|
|
@@ -34,5 +34,21 @@ export interface HttpTransferOptions {
|
|
|
34
34
|
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Request/cache}
|
|
35
35
|
*/
|
|
36
36
|
cache?: RequestCache;
|
|
37
|
+
/**
|
|
38
|
+
* Internal-only option controls whether or not cross-site Access-Control requests should be made using credentials
|
|
39
|
+
* such as cookies, authorization headers or TLS client certificates. It has no effect on same-origin requests.
|
|
40
|
+
* If set to `true`, the request will include credentials such as cookies, authorization headers, TLS
|
|
41
|
+
* client certificates, and so on. Moreover the response cookies will also be set.
|
|
42
|
+
* If set to `false`, the cross-site request will not include credentials, and the response cookies from a different
|
|
43
|
+
* domain will be ignored.
|
|
44
|
+
*
|
|
45
|
+
* This option is only conformed by {@link fetchTransferHandler | fetchTransferHandler }
|
|
46
|
+
*
|
|
47
|
+
* @default 'same-origin'
|
|
48
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/withCredentials}
|
|
49
|
+
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials}
|
|
50
|
+
* @internal
|
|
51
|
+
*/
|
|
52
|
+
withCrossDomainCredentials?: boolean;
|
|
37
53
|
}
|
|
38
54
|
export type HttpTransferHandler = TransferHandler<HttpRequest, HttpResponse, HttpTransferOptions>;
|
|
@@ -4,7 +4,7 @@ export { LegacyConfig } from './singleton/types';
|
|
|
4
4
|
export { JWT, StrictUnion, CognitoIdentityPoolConfig, JwtPayload, } from './singleton/Auth/types';
|
|
5
5
|
export { decodeJWT, assertTokenProviderConfig, assertIdentityPoolIdConfig, assertOAuthConfig, } from './singleton/Auth/utils';
|
|
6
6
|
export { isTokenExpired } from './singleton/Auth';
|
|
7
|
-
export {
|
|
7
|
+
export { APIAuthMode, DocumentType } from './singleton/API/types';
|
|
8
8
|
export { Signer } from './Signer';
|
|
9
9
|
export { ConsoleLogger, ConsoleLogger as Logger } from './Logger';
|
|
10
10
|
export { ClientDevice } from './ClientDevice';
|
|
@@ -9,10 +9,17 @@ var __assign = (this && this.__assign) || function () {
|
|
|
9
9
|
};
|
|
10
10
|
return __assign.apply(this, arguments);
|
|
11
11
|
};
|
|
12
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
13
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
14
|
+
import { ConsoleLogger as Logger } from './Logger';
|
|
15
|
+
var logger = new Logger('parseAWSExports');
|
|
12
16
|
var authTypeMapping = {
|
|
13
17
|
API_KEY: 'apiKey',
|
|
14
18
|
AWS_IAM: 'iam',
|
|
15
|
-
AMAZON_COGNITO_USER_POOLS: '
|
|
19
|
+
AMAZON_COGNITO_USER_POOLS: 'userPool',
|
|
20
|
+
OPENID_CONNECT: 'oidc',
|
|
21
|
+
NONE: 'none',
|
|
22
|
+
LAMBDA: 'lambda',
|
|
16
23
|
};
|
|
17
24
|
/**
|
|
18
25
|
* This utility converts the `aws-exports.js` file generated by the Amplify CLI into a {@link ResourcesConfig} object
|
|
@@ -24,7 +31,7 @@ var authTypeMapping = {
|
|
|
24
31
|
*/
|
|
25
32
|
export var parseAWSExports = function (config) {
|
|
26
33
|
if (config === void 0) { config = {}; }
|
|
27
|
-
var aws_appsync_apiKey = config.aws_appsync_apiKey, aws_appsync_authenticationType = config.aws_appsync_authenticationType, aws_appsync_graphqlEndpoint = config.aws_appsync_graphqlEndpoint, aws_appsync_region = config.aws_appsync_region, aws_cognito_identity_pool_id = config.aws_cognito_identity_pool_id, aws_cognito_sign_up_verification_method = config.aws_cognito_sign_up_verification_method, aws_mandatory_sign_in = config.aws_mandatory_sign_in, aws_mobile_analytics_app_id = config.aws_mobile_analytics_app_id, aws_mobile_analytics_app_region = config.aws_mobile_analytics_app_region, aws_user_files_s3_bucket = config.aws_user_files_s3_bucket, aws_user_files_s3_bucket_region = config.aws_user_files_s3_bucket_region, aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing = config.aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing, aws_user_pools_id = config.aws_user_pools_id, aws_user_pools_web_client_id = config.aws_user_pools_web_client_id, geo = config.geo, oauth = config.oauth;
|
|
34
|
+
var aws_appsync_apiKey = config.aws_appsync_apiKey, aws_appsync_authenticationType = config.aws_appsync_authenticationType, aws_appsync_graphqlEndpoint = config.aws_appsync_graphqlEndpoint, aws_appsync_region = config.aws_appsync_region, aws_cognito_identity_pool_id = config.aws_cognito_identity_pool_id, aws_cognito_sign_up_verification_method = config.aws_cognito_sign_up_verification_method, aws_mandatory_sign_in = config.aws_mandatory_sign_in, aws_mobile_analytics_app_id = config.aws_mobile_analytics_app_id, aws_mobile_analytics_app_region = config.aws_mobile_analytics_app_region, aws_user_files_s3_bucket = config.aws_user_files_s3_bucket, aws_user_files_s3_bucket_region = config.aws_user_files_s3_bucket_region, aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing = config.aws_user_files_s3_dangerously_connect_to_http_endpoint_for_testing, aws_user_pools_id = config.aws_user_pools_id, aws_user_pools_web_client_id = config.aws_user_pools_web_client_id, geo = config.geo, oauth = config.oauth, aws_cloud_logic_custom = config.aws_cloud_logic_custom;
|
|
28
35
|
var amplifyConfig = {};
|
|
29
36
|
// Analytics
|
|
30
37
|
if (aws_mobile_analytics_app_id) {
|
|
@@ -35,17 +42,18 @@ export var parseAWSExports = function (config) {
|
|
|
35
42
|
},
|
|
36
43
|
};
|
|
37
44
|
}
|
|
38
|
-
// TODO: Need to support all API configurations
|
|
39
45
|
// API
|
|
40
46
|
if (aws_appsync_graphqlEndpoint) {
|
|
47
|
+
var defaultAuthMode = authTypeMapping[aws_appsync_authenticationType];
|
|
48
|
+
if (!defaultAuthMode) {
|
|
49
|
+
logger.debug("Invalid authentication type ".concat(aws_appsync_authenticationType, ". Falling back to IAM."));
|
|
50
|
+
}
|
|
41
51
|
amplifyConfig.API = {
|
|
42
|
-
|
|
43
|
-
defaultAuthMode: {
|
|
44
|
-
type: authTypeMapping[aws_appsync_authenticationType],
|
|
45
|
-
apiKey: aws_appsync_apiKey,
|
|
46
|
-
},
|
|
52
|
+
GraphQL: {
|
|
47
53
|
endpoint: aws_appsync_graphqlEndpoint,
|
|
54
|
+
apiKey: aws_appsync_apiKey,
|
|
48
55
|
region: aws_appsync_region,
|
|
56
|
+
defaultAuthMode: defaultAuthMode !== null && defaultAuthMode !== void 0 ? defaultAuthMode : 'iam',
|
|
49
57
|
},
|
|
50
58
|
};
|
|
51
59
|
}
|
|
@@ -77,6 +85,14 @@ export var parseAWSExports = function (config) {
|
|
|
77
85
|
}
|
|
78
86
|
: __assign({}, geo);
|
|
79
87
|
}
|
|
88
|
+
// REST API
|
|
89
|
+
if (aws_cloud_logic_custom) {
|
|
90
|
+
amplifyConfig.API = __assign(__assign({}, amplifyConfig.API), { REST: aws_cloud_logic_custom.reduce(function (acc, api) {
|
|
91
|
+
var _a;
|
|
92
|
+
var name = api.name, endpoint = api.endpoint, region = api.region, service = api.service;
|
|
93
|
+
return __assign(__assign({}, acc), (_a = {}, _a[name] = __assign(__assign({ endpoint: endpoint }, (service ? { service: service } : undefined)), (region ? { region: region } : undefined)), _a));
|
|
94
|
+
}, {}) });
|
|
95
|
+
}
|
|
80
96
|
return amplifyConfig;
|
|
81
97
|
};
|
|
82
98
|
var getRedirectUrl = function (redirectStr) {
|
|
@@ -1,35 +1,72 @@
|
|
|
1
|
+
import { Headers } from '../../clients';
|
|
1
2
|
export type LibraryAPIOptions = {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* @deprecated This property should not be used
|
|
9
|
-
*/
|
|
10
|
-
userAgentSuffix?: string;
|
|
3
|
+
GraphQL?: {
|
|
4
|
+
headers?: (options: {
|
|
5
|
+
query: string;
|
|
6
|
+
variables: Record<string, DocumentType>;
|
|
7
|
+
}) => Promise<Headers>;
|
|
11
8
|
};
|
|
12
|
-
|
|
9
|
+
REST?: {
|
|
10
|
+
headers?: (options: {
|
|
11
|
+
apiName: string;
|
|
12
|
+
}) => Promise<Headers>;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
type APIGraphQLConfig = {
|
|
16
|
+
/**
|
|
17
|
+
* Required GraphQL endpoint, must be a valid URL string.
|
|
18
|
+
*/
|
|
19
|
+
endpoint: string;
|
|
20
|
+
/**
|
|
21
|
+
* Optional region string used to sign the request. Required only if the auth mode is 'iam'.
|
|
22
|
+
*/
|
|
23
|
+
region?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Optional API key string. Required only if the auth mode is 'apiKey'.
|
|
26
|
+
*/
|
|
27
|
+
apiKey?: string;
|
|
28
|
+
/**
|
|
29
|
+
* Custom domain endpoint for GraphQL API.
|
|
30
|
+
*/
|
|
31
|
+
customEndpoint?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Optional region string used to sign the request to `customEndpoint`. Effective only if `customEndpoint` is
|
|
34
|
+
* specified, and the auth mode is 'iam'.
|
|
35
|
+
*/
|
|
36
|
+
customEndpointRegion?: string;
|
|
37
|
+
/**
|
|
38
|
+
* Default auth mode for all the API calls to given service.
|
|
39
|
+
*/
|
|
40
|
+
defaultAuthMode: APIAuthMode;
|
|
41
|
+
};
|
|
42
|
+
type APIRestConfig = {
|
|
43
|
+
/**
|
|
44
|
+
* Required REST endpoint, must be a valid URL string.
|
|
45
|
+
*/
|
|
46
|
+
endpoint: string;
|
|
47
|
+
/**
|
|
48
|
+
* Optional region string used to sign the request with IAM credentials. If Omitted, region will be extracted from
|
|
49
|
+
* the endpoint.
|
|
50
|
+
*
|
|
51
|
+
* @default 'us-east-1'
|
|
52
|
+
*/
|
|
53
|
+
region?: string;
|
|
54
|
+
/**
|
|
55
|
+
* Optional service name string to sign the request with IAM credentials.
|
|
56
|
+
*
|
|
57
|
+
* @default 'execute-api'
|
|
58
|
+
*/
|
|
59
|
+
service?: string;
|
|
13
60
|
};
|
|
14
61
|
export type APIConfig = {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
region: string;
|
|
18
|
-
endpoint: string;
|
|
19
|
-
modelIntrospectionSchema?: any;
|
|
20
|
-
};
|
|
62
|
+
REST?: Record<string, APIRestConfig>;
|
|
63
|
+
GraphQL?: APIGraphQLConfig;
|
|
21
64
|
};
|
|
22
|
-
export type
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
} | {
|
|
29
|
-
type: 'iam';
|
|
30
|
-
} | {
|
|
31
|
-
type: 'lambda';
|
|
32
|
-
} | {
|
|
33
|
-
type: 'custom';
|
|
65
|
+
export type APIAuthMode = 'apiKey' | 'oidc' | 'userPool' | 'iam' | 'lambda' | 'none';
|
|
66
|
+
/**
|
|
67
|
+
* Type representing a plain JavaScript object that can be serialized to JSON.
|
|
68
|
+
*/
|
|
69
|
+
export type DocumentType = null | boolean | number | string | DocumentType[] | {
|
|
70
|
+
[prop: string]: DocumentType;
|
|
34
71
|
};
|
|
35
|
-
export
|
|
72
|
+
export {};
|
|
@@ -9,7 +9,7 @@ export function assertTokenProviderConfig(cognitoConfig) {
|
|
|
9
9
|
}
|
|
10
10
|
else {
|
|
11
11
|
assertionValid =
|
|
12
|
-
!!cognitoConfig.
|
|
12
|
+
!!cognitoConfig.userPoolId && !!cognitoConfig.userPoolClientId;
|
|
13
13
|
}
|
|
14
14
|
return assert(assertionValid, AuthConfigurationErrorCode.AuthTokenConfigException);
|
|
15
15
|
}
|
|
@@ -4,6 +4,7 @@ import { AuthConfig, LibraryAuthOptions, AuthUserPoolConfig, AuthIdentityPoolCon
|
|
|
4
4
|
import { GeoConfig } from './Geo/types';
|
|
5
5
|
import { LibraryStorageOptions, StorageAccessLevel, StorageConfig } from './Storage/types';
|
|
6
6
|
import { I18nConfig } from '../I18n/types';
|
|
7
|
+
import { NotificationsConfig } from './Notifications/types';
|
|
7
8
|
export type LegacyConfig = {
|
|
8
9
|
/**
|
|
9
10
|
* @deprecated The field should not be used.
|
|
@@ -15,6 +16,7 @@ export type ResourcesConfig = {
|
|
|
15
16
|
Analytics?: AnalyticsConfig;
|
|
16
17
|
Auth?: AuthConfig;
|
|
17
18
|
I18n?: I18nConfig;
|
|
19
|
+
Notifications?: NotificationsConfig;
|
|
18
20
|
Storage?: StorageConfig;
|
|
19
21
|
Geo?: GeoConfig;
|
|
20
22
|
};
|
|
@@ -3,7 +3,8 @@ import { KeyValueStorageInterface } from '../types';
|
|
|
3
3
|
* @internal
|
|
4
4
|
*/
|
|
5
5
|
export declare class DefaultStorage implements KeyValueStorageInterface {
|
|
6
|
-
private asyncStorage
|
|
6
|
+
private asyncStorage;
|
|
7
|
+
constructor();
|
|
7
8
|
/**
|
|
8
9
|
* This is used to set a specific item in storage
|
|
9
10
|
* @param {string} key - the key for the item
|
|
@@ -29,5 +30,4 @@ export declare class DefaultStorage implements KeyValueStorageInterface {
|
|
|
29
30
|
* @returns {string} nothing
|
|
30
31
|
*/
|
|
31
32
|
clear(): Promise<void>;
|
|
32
|
-
private assertModule;
|
|
33
33
|
}
|
|
@@ -36,14 +36,14 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
36
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
|
-
import {
|
|
40
|
-
var ASYNC_STORAGE_MODULE = '@react-native-async-storage/async-storage';
|
|
39
|
+
import { loadAsyncStorage } from '@aws-amplify/react-native';
|
|
41
40
|
var MEMORY_KEY_PREFIX = '@MemoryStorage:';
|
|
42
41
|
/**
|
|
43
42
|
* @internal
|
|
44
43
|
*/
|
|
45
44
|
var DefaultStorage = /** @class */ (function () {
|
|
46
45
|
function DefaultStorage() {
|
|
46
|
+
this.asyncStorage = loadAsyncStorage();
|
|
47
47
|
}
|
|
48
48
|
/**
|
|
49
49
|
* This is used to set a specific item in storage
|
|
@@ -52,7 +52,6 @@ var DefaultStorage = /** @class */ (function () {
|
|
|
52
52
|
* @returns {string} value that was set
|
|
53
53
|
*/
|
|
54
54
|
DefaultStorage.prototype.setItem = function (key, value) {
|
|
55
|
-
this.assertModule(this.asyncStorage);
|
|
56
55
|
return this.asyncStorage.setItem("".concat(MEMORY_KEY_PREFIX).concat(key), value);
|
|
57
56
|
};
|
|
58
57
|
/**
|
|
@@ -62,7 +61,6 @@ var DefaultStorage = /** @class */ (function () {
|
|
|
62
61
|
* @returns {string} the data item
|
|
63
62
|
*/
|
|
64
63
|
DefaultStorage.prototype.getItem = function (key) {
|
|
65
|
-
this.assertModule(this.asyncStorage);
|
|
66
64
|
return this.asyncStorage.getItem("".concat(MEMORY_KEY_PREFIX).concat(key));
|
|
67
65
|
};
|
|
68
66
|
/**
|
|
@@ -71,7 +69,6 @@ var DefaultStorage = /** @class */ (function () {
|
|
|
71
69
|
* @returns {string} value - value that was deleted
|
|
72
70
|
*/
|
|
73
71
|
DefaultStorage.prototype.removeItem = function (key) {
|
|
74
|
-
this.assertModule(this.asyncStorage);
|
|
75
72
|
return this.asyncStorage.removeItem("".concat(MEMORY_KEY_PREFIX).concat(key));
|
|
76
73
|
};
|
|
77
74
|
/**
|
|
@@ -83,9 +80,7 @@ var DefaultStorage = /** @class */ (function () {
|
|
|
83
80
|
var allKeys;
|
|
84
81
|
return __generator(this, function (_a) {
|
|
85
82
|
switch (_a.label) {
|
|
86
|
-
case 0:
|
|
87
|
-
this.assertModule(this.asyncStorage);
|
|
88
|
-
return [4 /*yield*/, this.asyncStorage.getAllKeys()];
|
|
83
|
+
case 0: return [4 /*yield*/, this.asyncStorage.getAllKeys()];
|
|
89
84
|
case 1:
|
|
90
85
|
allKeys = _a.sent();
|
|
91
86
|
return [2 /*return*/, this.asyncStorage.multiRemove(allKeys.filter(function (key) { return key.startsWith(MEMORY_KEY_PREFIX); }))];
|
|
@@ -93,22 +88,6 @@ var DefaultStorage = /** @class */ (function () {
|
|
|
93
88
|
});
|
|
94
89
|
});
|
|
95
90
|
};
|
|
96
|
-
DefaultStorage.prototype.assertModule = function (asyncStorage) {
|
|
97
|
-
if (!!asyncStorage) {
|
|
98
|
-
return;
|
|
99
|
-
}
|
|
100
|
-
try {
|
|
101
|
-
this.asyncStorage = require(ASYNC_STORAGE_MODULE)
|
|
102
|
-
.default;
|
|
103
|
-
}
|
|
104
|
-
catch (err) {
|
|
105
|
-
throw new AmplifyError({
|
|
106
|
-
name: 'NativeModuleException',
|
|
107
|
-
message: "Unable to find ".concat(ASYNC_STORAGE_MODULE),
|
|
108
|
-
recoverySuggestion: "Make sure to install ".concat(ASYNC_STORAGE_MODULE),
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
};
|
|
112
91
|
return DefaultStorage;
|
|
113
92
|
}());
|
|
114
93
|
export { DefaultStorage };
|